2014-09-01 56 views
3

我刚刚通过云工具包文档,如在此链接cloudkit中所述,但未清楚如何修改公用数据库的数据库记录。按照cloudkit框架中的这个描述。Cloudkit我们是否可以修改公共数据库的数据

enter image description here

使用公共数据库,在默认情况下,数据图像指定为世界可读,可写的主人。这意味着只有拥有者可以修改其他用户只能读取的数据? 假设使用公共数据库,用户A可以访问用户B的记录,但用户A是否可以修改同一应用程序中用户B的记录。

请建议。谢谢。

回答

3

在CloudKit仪表板中,您可以更改访问权限。所以有可能使其他人可以写入记录。你必须小心这一点。当您的应用在越狱设备上运行时,可以使用任意参数执行方法。这是一个很高的安全风险。

+0

感谢您的回复,这意味着我们只能通过仪表板更改访问权限,我们无法以编程方式执行相同操作,更正吗? – Nikunj 2014-09-01 08:33:04

+1

如果你想要程序化的访问权限,那么也许你可以使用zone的。但是你必须小心放置在什么区域,因为不可能执行查询来从多个区域获取数据。或者只需添加您自己的访问控制,方法是在记录中添加额外字段并对其进行过滤。再次,在越狱设备上存在安全风险,因为安全措施仅在您的手机上执行,而不是在iCloud中执行。 – 2014-09-01 09:13:09

1

如果您在仪表板上的记录类型中设置了安全设置,则可以将所有公用记录设置为任何人都可写,而不会干扰安全角色。

Set Authenticated to Write 
Set Creator to create. 

enter image description here

附:你不能从模拟器'世界'读取,你需要登录。但在设备上,您不需要登录即可阅读公共数据库:-),这很好。

+0

您好,你知道是否有另一种方式来编写公共数据库作为管理员,种子和维护数据,而不需要icloud登录?完整的问题:http://stackoverflow.com/questions/36808601/seed-and-maintain-cloudkit-public-database-still-requires-icloud-login – Crashalot 2016-04-23 08:46:55

相关问题