代码之家  ›  专栏  ›  技术社区  ›  Bryan

如何保护Sitecore内容树中的整个分支?

  •  7
  • Bryan  · 技术社区  · 14 年前

    我有我的内容树的一部分,我想拒绝所有的权限,除了特定的角色。这似乎是一个非常明显的任务,但我没有看到一个安全管理员的食谱中的例子,我不能想出一个简单的方法来使用安全工具。我一定错过了什么明显的???

    假设我有这个:

    sitecore
    -content
      -branchA
      -branchB
    

    默认情况下,extranet\Anonymous可以读取我在内容树中创建的所有内容。但是,即使我在安全功能区上单击“要求登录”,所有用户仍然具有读取权限,他们只需登录即可。我想使branchB仅由sitecore\SomeRole成员可读。这是怎么做到的?

    2 回复  |  直到 14 年前
        1
  •  9
  •   Yan Sklyarenko Rob Mensching    14 年前

    好的,遵循这个准则。

    假设我们有sitecore\SomeRole和如下内容树:

    Home
      branchA
        itemA1
      branchB
        itemB1
    

    首先,在安全编辑器中选择主节点,选择sitecore\Everyone角色并设置以下权限:

    alt text http://img822.imageshack.us/img822/7172/sitecoreeveryonepermiss.png

    alt text http://img532.imageshack.us/img532/3512/sitecoreeveryoneaccess.png

    让我们允许branchB扮演某个角色。返回安全编辑器并显式允许SomeRole的权限:

    alt text http://img80.imageshack.us/img80/120/sitecoresomerolepermiss.png

    然后在AccessViewer中再次检查:

    alt text http://img27.imageshack.us/img27/9584/sitecoresomeroleaccess.png

    希望这能回答你的问题。请注意,6.2.X之前的Sitecore版本存在一个问题:设置权限后AccessViewer无法正确刷新。杀死aspnetwp(w3wp)来修复此问题。

        2
  •  1
  •   EliThompson    14 年前

    听起来您的问题是您允许extranet\Anonymous用户在树的上方有太多的读取权限。删除顶层的访问授权(不要拒绝它,只需删除它)并在您真正需要的地方授予它(比如在branchA)。