如何批准上传到 CloudKit

How to approve uploads to CloudKit

创建使用 CloudKit 的应用程序时,有时您允许用户创建数据并将其上传到 public 数据库,创建后 public 所有人都可以使用该数据库.这引出了我的问题:

您如何review/moderate/approve 用户创建数据,然后再向全世界公开?

您可以通过两种主要方式完成此操作:

  1. 为未批准的内容设置单独的记录类型,您允许任何经过身份验证的用户在其中创建记录(您可以通过记录类型的角色安全设置来控制这一点)。然后,一旦您批准了内容,将内容复制到只有您具有编辑记录角色的记录类型(通过您拥有的某些管理应用程序或 CloudKit 仪表板以编程方式)。您将记录复制到的记录类型应该是您的应用程序用来向其他用户显示内容的记录类型。

  2. 允许经过身份验证的用户(再次通过角色安全设置)直接在记录类型中创建记录,但如果设置了特定标志(例如,添加一个 "isApproved" 字段)。这种方法的主要警告是您无法保证用户不会将 "isApproved" 字段设置为 true。另外,如果你这样做,请确保不要让经过身份验证的用户写入(仅限 "create")以确保他们无法编辑其他用户的内容。