我喜欢CloudKit有很多原因:
由于所有这些美观,数据也在同一用户的设备之间共享,没有任何登录和用户管理,我应该关心。
在很多情况下我可以如何使用它,其中一些中继事实,数据只能由应用程序访问,并且用户无法修改或复制。这样的示例可以是消费类应用内购买,这样我可以将所有购买存储在CloudKit中,并且它们将在同一用户的设备之间共享。
所以实际的问题是:
没有越狱设备的用户能否以某种方式修改应用程序外的CloudKit数据?
我相信越狱会让他做很多事情,包括更换CloudKit方法,但普通用户呢?
加密可以是保护数据的解决方案,但它不能防止复制数据,例如,用户可以与其他用户共享他的记录,而不同的用户将获得他不应该拥有的内容。 / p>
苹果非常小心地认为这是不可能的。我听了设备和CloudKit之间的一些通信,发现他们使用protobuf进行通信,这是标准的开放,但没有消息定义也不全面。我似乎也使用当前时间和请求标识符对每个请求进行了签名。然而,所有这些只是我的猜测,并且可能有很多方法可以解决它。
答案 0 :(得分:8)
简短回答 - 不,没有越狱设备的用户无法在应用程序之外修改其CloudKit数据。
Apple不允许非开发者用户访问应用通过CloudKit存储在其iCloud帐户中的任何数据。
开发人员只能访问存储在公共数据库中的数据或存储在其私有数据库中的数据,并且只能访问其应用程序容器。