- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我能看到 CloudKit 中 Security Rolls 的唯一用途是授予另一个团队成员访问 cloudkit 仪表板的权限,以便修改仪表板中的表格?这是正确的,还是我遗漏了什么?
目前我是唯一可以登录仪表板的人,我无法添加其他团队成员。我认为这是因为我在 Apple 注册为单一开发人员?我希望使用它在公共(public)数据库上设置某种类型的安全性,但似乎我无法通过安全角色来做到这一点。
我正在尝试为公共(public)数据库设置三种不同类型的用户:
我将在同一个容器中运行 3 个应用。
1.) 管理员 - 单独的应用
2.) 消费者 - 独立应用
3.) 承包商 - 单独的应用程序
我找到了这个主题:
How do I access security role in cloudkit
看来我必须在每个应用程序中添加安全性以仅访问该类型用户允许的数据?
最佳答案
我设置了多个应用程序共享同一个容器,您不仅需要在 Xcode 本身中进行配置,还需要在您编写的代码中进行配置。
let container = CKContainer(identifier: "iCloud.yourDB")
let publicDB = container.publicCloudDatabase
访问权限是基于 iCloud 用户而不是应用程序授予的。因此,如果您要让所有三个应用程序在使用相同 iCloud ID 的设备上运行,那么它们都可以使用默认权限访问相同的公共(public)和私有(private)数据库。
您需要“编码”在管理应用程序中“创建”和“写入”数据库的能力。大概是在承包商应用程序中“写入”数据库并在您的消费者应用程序中“读出”数据库;一个示例场景。
但是,如果计划是让多个 iCloud 用户使用共享同一容器的不同应用程序,那么您的选择就会更加有限。私有(private)数据库就是私有(private)的。所以不同的iCloud用户不能共享同一个私有(private)数据库,你不能更改权限期限,他们只能共享公共(public)数据库。
在公共(public)数据库中,默认权限将授予所有人读取权限,仅允许经过身份验证的 [登录到 iCloud 帐户] 用户能够创建新记录并将所述已创建记录与创建它们的用户相关联。
换句话说,如果经过身份验证的用户 [A] 在公共(public)数据库中创建了一条记录,用户 [B] 可以读取它,但没有写入权限来更新它;如果您有要求,您会/可能会更改访问权限以授予他们这样做的权利,您会在仪表板上进行更改。
但请注意,据我所知,公共(public)数据库上的配额与 iCloud 帐户无关,它们与应用程序相关联。因此,如果您创建一个将大量数据转储到公共(public)数据库中的应用程序;当/如果您的应用程序用户超过每个应用程序每个用户允许的公共(public)数据库配额时,Apple 会向您发送账单。 [是的,所以您的应用的用户越多,您获得的公共(public)数据库配额就越多,但您应该/需要限制个人用户可以申请的数量,以限制您对 iCloud 费用的责任!]
我可能误解了 Apple 在最后一段中对其工作原理/将向用户/应用程序收费的描述,希望通过各种方式进行澄清。
关于ios - Cloudkit 安全角色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35829653/
要在私有(private) CKRecordZone 中添加 CKRecord,您需要确保该区域已经存在。 但这是否意味着每次我需要插入记录时,我都需要获取所有区域并使用 fetchAllRecord
我正在与 cloudkit 仪表板交互并查看我的应用程序收集的数据。 如何从仪表板导出所有数据(数据 -> csv 或 json),以便我可以对其进行一些分析? 谢谢! 最佳答案 我认为苹果永远不会提
我使用 Cloudkit 和私有(private)数据库将一些文件存储到 iCloud 并在 iOS 和 OSX 之间同步。现在我想实现一些东西,用户可以在不离开应用程序并查看首选项的情况下查看他的
我有两个看起来像这样的 CloudKit 数据对象: 父对象: { "records": [ { "recordName": "14102C0A-60F
有谁知道这个闭包中的String字段的用途public var recordWithIDWasDeletedBlock: ((CKRecordID, String) -> Void)?。我不知道它的用
我的应用程序在 CloudKit 中执行的几乎所有操作现在都会返回此错误: (lldb) po [error userInfo] { CKDHTTPHeaders = {
我在尝试初始化 Cloudkit schema 时遇到此错误: Error Domain=NSCocoaErrorDomain Code=134060 "A Core Data error occur
我正在更新 iOS13 之前的 Core Data 应用程序以使用 Core Data+CloudKit 同步来支持多个设备上的单个用户。同步应该是自动发生的,并且在我开发的一个中间步骤中它确实起作用
有没有办法使用 CloudKit 获取 iCloud 笔记?我看过文档: https://developer.apple.com/library/archive/documentation/DataM
swift 3.1,Xcode 8.3.3 我在 CloudKit 中有一个名为 Aircraft 的记录类型,它有一个名为 fieldValues 的字段,类型为 Reference List。 在
swift 3.1,Xcode 8.3.3 我在 CloudKit 中有一个名为 Aircraft 的记录类型,它有一个名为 fieldValues 的字段,类型为 Reference List。 在
当我尝试从 CloudKit Dashboard 查询 CloudKit 时,收到一条错误消息: There was a problem querying the “Entry” type. no a
出于某种原因,一小部分 iOS 10 用户无法从我的公共(public) iCloud 容器中读取数据。 CloudKit 返回的 localisedError 是“Account doesn't h
我有一个在 iOS 上运行良好的应用程序,但是当使用催化剂运行时,如果我在 macOS 上滑动到另一个虚拟桌面,然后再返回大约 10 次,它会间歇性地崩溃。它主要发生在 UICollectionVie
用户 B 从用户 A 拥有的共享记录中删除自己的正确方法是什么?我想我记得从一些 WWDC 视频中用户 B 会删除 CKShare来自他的共享数据库,但在查看用户 A 设备的权限时,该用户似乎仍然是参
对于我们的消息传递应用程序,如果我们将用户消息直接发送到 CloudKit (不做任何我们自己的加密),我们可以声称我们的应用程序是 end-to-end encrypted ,“只有通信用户可以阅读
我之前曾尝试使用 OSX/iOS 应用程序实现 CloudKit,由于我的强制症,我非常担心设备之间某些数据的优先级,以及可能丢失数据或恢复已删除的数据。 我的逻辑是,将从 iCloud 获取的数据和
Apple 发布了一种针对 CloudKit 的服务器到服务器进行身份验证的新方法。 https://developer.apple.com/library/content/documentation
因此根据Apple的文档,未登录iCloud的用户仍然可以从公共(public)数据库中读取数据,但是在查询公共(public)数据库时,我收到以下错误: Error Domain=NSCocoaEr
我需要创建一个CKQuery,其中谓词包含记录的引用,而不是记录的字段。 像这样 let query = CKQuery(recordType: "OUP", predicate: NSPredica
我是一名优秀的程序员,十分优秀!