如何访问 cloudkit 中的安全角色

Posted

技术标签:

【中文标题】如何访问 cloudkit 中的安全角色【英文标题】:How do I access security role in cloudkit 【发布时间】:2014-08-29 14:18:09 【问题描述】:

我正在构建一个具有基于角色的安全性的应用程序。我在 Cloudkit Dashboard 中构建了我的记录类型(项目、帐户、HistoryLog、财务、客户等),并且我还创建了安全角色。我有名为:Executive 和 DeptManager 的角色。我已按角色为记录类型分配了适当的访问权限。我还为特殊记录类型“用户”中的用户分配了 Executive 或 DeptManager 的角色。

我已成功访问和操作记录类型中的数据。现在我正在应用程序中实现基于角色的查看。所以在第一个视图中有一个登录“喜欢”功能,所以在我发现用户之后,我想在 PickerView 中显示该用户的角色供他们选择。一旦他们选择了一个角色,我就会将他们带到适当的视图。例如,我可能同时担任 DeptManager 和 Executive 的角色。如果今天我选择 DeptManager,我将进入一个允许我输入生产指标的视图。如果改天我选择执行,我将看到所有向我报告的部门的绩效指标。

这是来自 CloudKit Dashboard 的图像,显​​示了我正在尝试检索的信息。提前感谢您的任何建议。

【问题讨论】:

【参考方案1】:

目前无法获取用户所在的角色。目前从 discoverUserInfoWithUserRecordID 返回的信息非常有限。我也希望它会尽快延长。目前你只能得到一个 userRecordID、名字和姓氏。如果您确实想要这样的功能,那么唯一的解决方案是创建一个您可以查询的影子注册。然后,您将面临保持这两个同步的挑战。这必须手动完成。

【讨论】:

ios 9 开始,您甚至不会得到名字和姓氏。你必须自己实现识别逻辑。 在 iOS 9 中你仍然可以得到名字和姓氏。但它是通过提供 CNContact 的属性。

以上是关于如何访问 cloudkit 中的安全角色的主要内容,如果未能解决你的问题,请参考以下文章

无法从 Cloudkit Cloud (JS) 检索所有记录

在 iOS 的 Intents 扩展中访问 Cloud kit/Core Data 条目

无法在安全的Google Cloud Function上获得CORS错误

如何使用 Cloud Code 删除 Parse.com 中的角色

如何从Swift中的Cloud FireStore Firebase访问特定字段

通过控制中心控制 Confluent Cloud 中的主题级别权限