【问题标题】:Is there a limit on the number of Parse "Role" objects I can/should have?我可以/应该拥有的解析“角色”对象的数量是否有限制?
【发布时间】:2015-07-07 00:39:52
【问题描述】:

我使用 Parse (JavaScript) 开发了一个私人聊天应用程序,其中“消息”对象在两个用户的组内交换。 (这可以在以后增加以允许组中的更多用户。)一个用户只能是一个组的一部分。

我看到以下选项来保护对消息的访问:

使用 Parse 角色和 ACL - 为每个组创建 Parse Role 对象,将两个用户分配到该组,并在每个新消息对象上设置 ACL 以限制读/写访问仅适用于该组。

这意味着如果我有 10 万个用户,就会有 5 万个角色对象。我不确定这是否是预期的用例,或者这是否会对性能产生严重影响?

使用解析 ACL - 为每条新消息创建一个 ACL,其中包括组中两个用户的读取权限。

自己管理安全 - 设置类权限以禁用对“消息”的访问,编写 CloudCode 函数来检索由当前用户或当前组的任何其他成员创建的消息对象。我可以为每个用户将组成员存储在“好友”1:n 关系中,或者创建一个单独的“组”类。

还有其他情况吗?各自的优点/缺点是什么?

【问题讨论】:

  • 我能问一下你决定走哪个方向吗?我有同样的情况,我试图解决。感谢您提供的任何指导。
  • @Robert 我为每个消息对象手动为两个用户设置了 Parse ACL。

标签: parse-platform acl roles


【解决方案1】:

曾经有角色限制(IIRC 免费帐户只有 1 个,付费帐户只有几个),不确定还有没有,看起来不像。

拥有与组相关的消息并根据组对象查询和限制访问可能是一种更好的方法(从查询性能的角度来看 - 尽管这确实需要进行负载测试)。

从技术上讲,任何人抓取您的密钥并直接访问 API 仍然可以看到所有消息,因此为每条消息添加角色仍然是谨慎的。 Parse 有一些最近的示例代码,它们鼓励创建大量角色,尽管这应该再次进行测试。

【讨论】:

  • Thx Wain - 您知道创建两个用户的角色与在每个对象上手动为这两个用户设置具有读/写访问权限的 ACL 之间是否存在差异?
  • 主要区别在于增加2人以上时的维护,除了安全性/性能应该基本相同
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-01
  • 2019-06-03
  • 1970-01-01
  • 2011-07-09
  • 1970-01-01
相关资源
最近更新 更多