用户可以在 CloudKit 中编辑自己的私人数据吗

Can users edit their own private data in CloudKit

我喜欢 CloudKit 有很多原因:

尽管如此美丽,数据也在同一用户的设备之间共享,没有任何登录和用户管理,我应该关心。

我可以在很多情况下使用它,其中一些依赖于这样一个事实,即数据只能由应用程序访问,用户不能修改或复制。这方面的例子可能是消耗品应用内购买,这样我就可以将所有购买存储在 CloudKit 中,并且它们将在同一用户的设备之间共享。

所以实际问题是:

没有越狱设备的用户能否以某种方式在应用程序外修改他的 CloudKit 数据?

我相信越狱可以让他做很多事情,包括更换CloudKit方法,但是普通用户呢?

加密可能是一种保护数据的解决方案,但它不能防止复制数据,例如,一个用户可以与另一个用户共享他的记录,而另一个用户将得到他不应该拥有的东西.

苹果非常小心地让这一切成为不可能。听了一些device和CloudKit的通信,发现他们通信都是用protobuf,是开放标准的,但是没有定义消息,不够全面。我似乎也使用当前时间和请求标识符对每个请求进行了签名。然而,所有这些都只是我的猜测,可能有很多方法可以解决这个问题。

简短回答 - 不,没有越狱设备的用户无法在应用程序之外修改他们的 CloudKit 数据。

Apple 不允许非开发人员用户通过 CloudKit.

访问应用程序存储在其 iCloud 帐户中的任何数据

并且开发人员只能访问存储在 public 数据库中的数据或存储在他们私有数据库中的他们自己的数据,并且只能用于他们的应用程序容器。