我正在使用SenseNet V 6.3社区版
步骤1:我已将节点type=mongo region=us
的允许权限设置为用户p
步骤2:xyz@xyz.com
从用户p
访问节点xyz@xyz.com
(成功)
步骤3:我已将节点Node.LoadNode()
的拒绝权限设置为用户p
第4步:我已经设置了节点xyz@xyz.com
的允许权限,以将p
作为成员进行分组
步骤5:xyz@xyz.com
从用户p
访问节点xyz@xyz.com
(错误)
遇到Node.LoadNode()
错误。
似乎没有覆盖组权限而不是用户权限,或者似乎没有覆盖最新权限
我该如何实现
感谢进阶
答案 0 :(得分:2)
这是设计使然: deny 权限总是比 allow 强。因此,如果为用户设置了显式拒绝,则不能通过组允许同一事物。设置权限的时间或是否为组或用户的时间都没有关系:规则是拒绝覆盖允许。
这就是为什么使用 deny 应该是最后的选择的原因。最好删除用户的允许权限,而不是通过组允许。
有关破坏权限,本地权限以及整个权限系统的详细信息,请访问this article。