Security CloudKit安全角色和权限是如何工作的?
CloudKit中有三个默认安全角色:Security CloudKit安全角色和权限是如何工作的?,security,permissions,cloudkit,security-roles,Security,Permissions,Cloudkit,Security Roles,CloudKit中有三个默认安全角色: 世界 已验证的 创建者 和三个权限: 创建 阅读 写入 这些安全角色和权限是如何工作的 下面是一些问题的示例,我希望通过对安全角色的解释来回答这些问题: 这三个角色意味着什么?前两个似乎很明显,但最后一个似乎不那么明显。例如,创建者是指表的创建者还是记录的创建者 删除权限在哪里?写 安全角色是否可以应用于单个记录?(例如,我希望用户只能访问InstantMessages表中记录的一个子集:他们发送的记录和他们接收的记录。这种性质的事情可以通过安全
- 世界
- 已验证的
- 创建者
- 创建
- 阅读
- 写入
- 这三个角色意味着什么?前两个似乎很明显,但最后一个似乎不那么明显。例如,创建者是指表的创建者还是记录的创建者
- 删除权限在哪里?写
- 安全角色是否可以应用于单个记录?(例如,我希望用户只能访问InstantMessages表中记录的一个子集:他们发送的记录和他们接收的记录。这种性质的事情可以通过安全角色来完成吗?)
- 是否继承了权限?(例如,创建者是否从creator、authenticated和world获得所有授予的权限?)
- 权限纯粹是加法的吗?或者我可以创建一个自定义角色来删除特权而不是添加特权吗?(例如,为了创建“禁止用户”安全角色。)
- 如何设置用户的角色?我可以为创建的每个用户设置默认角色吗?我可以通过编程方式更改用户的角色吗
- 如何创建新的安全角色?我可以通过编程方式创建/更新它们吗
但所有这些的关键是要记住,需要应用程序代码才能授予创建/读取/写入记录的权限,并且特定用户必须拥有该权限。因此,您可以在代码中执行任何您想执行的操作,以允许任何人执行任何操作—前提是您授予“已验证”的“写入”权限。这些角色是否仅适用于公共数据库?那么共享或私有呢?这些角色适用于公共数据库,也适用于私有数据库。只有一个帐户可以访问专用数据库。因此,这个人就是“创造者”,创造者拥有一切权利。故事结束。(共享文件-我不确定。)