【AEM 每日一贴】用户/用户组权限设置技巧(二)———— Access Control (rep:ntNames)

【写在前面】

这篇文章,是基于你已经看了第一篇文章 :【AEM 每日一贴】用户/用户组权限设置技巧(一)———— Access Control

或者你已经知道 Access Control 是干啥的

【正文】

接着上一篇文章,我们来讲 Accsess Control rep:ntNames 约束

rep:ntNames 约束,是针对节点属性 jcr:primaryType 的一个约束

设置  rep:ntNames 约束后,你设置的权限将会对你的当前节点下的所有子节点(包含当前节点) 中jcr:primaryType 符合该约束的节点生效

上面那句话好像表达得有点拗口,还是直接设置个Sample实践一下更为直观

【AEM 每日一贴】用户/用户组权限设置技巧(二)———— Access Control (rep:ntNames)

还是选择 /content/we-retail 节点,赋予 content-editor 组允许read的权限

设置 rep:ntNames 为 cq:Page,点击OK后,会生成这样的一条规则

【AEM 每日一贴】用户/用户组权限设置技巧(二)———— Access Control (rep:ntNames)

再让我们进入 useradmin ,查看 content-editor 组的权限

【AEM 每日一贴】用户/用户组权限设置技巧(二)———— Access Control (rep:ntNames)

【AEM 每日一贴】用户/用户组权限设置技巧(二)———— Access Control (rep:ntNames)

由以上两图可以得出,we-retial下,所有 jcr:primaryType 为 cq:Page 的节点,都被赋予了read权限

像 resources 节点这种 jcr:primaryType 为 nt:unstructured 的节点,就没有被赋予read权限

所以 rep:ntNames 这个约束的作用,就是可以让你对特定的 jcr:primaryType 的节点进行赋权

【写在最后】

从上文我们可以得知,rep:ntNames 约束在某些场景下会非常好用

例如当你需要对某一节点路径下的一类节点进行赋权的时候,你就可以通过Access Control的约束规则,添加赋权规则去实现

而不是在useradmin里面,一个节点一个节点的手工勾选,既花费时间,也容易出错