我有一个服务器端应用程序,它使用CloudKit Web服务来更改我的CloudKit容器。我为此生成了服务器到服务器密钥。
我希望我的服务器端脚本能够在我的公共数据库中更新任何类型Person
的记录,但是我收到一个错误:
[reason] =>不允许写入操作
[serverErrorCode] => ACCESS_DENIED
我的Person
记录的安全角色选项如下:
如果我检查写然后它工作,我不再得到错误。
但我担心我只是让我的应用程序访问的所有用户对该表中的任何记录进行更改。有没有办法只允许对我的应用程序及其服务器到服务器密钥进行写访问?
CloudKit社区对SO的安静程度令人遗憾。也许那是因为唯一真正了解CloudKit如何在Apple工作的人。 ;)
我在2016 WWDC talk中看到服务器到服务器的请求是作为“admin”用户发生的,所以我猜测检查此记录类型的Write选项是安全的。