Sitecore只能看到一个工作流的角色

时间:2012-03-06 21:38:56

标签: sitecore

我需要允许一组用户只能访问内容树中的一个节点,而只能访问一个工作流。到那时,它应该看起来好像Sitecore服务器只包含那个网站。

看起来“every everyone”角色在整个树中都具有读取权限,这迫使我明确拒绝在内容树和其他工作流中的其他节点上进行写访问。

但是,如果我这样做,显式拒绝通过继承传递给其他用户。

我有这样的角色:

  • 第一个网站编辑器
    • 所有工作流程均被拒绝但只有一个
    • 所有内容节点被拒绝但只有一个
  • 第二个网站编辑器
    • 所有工作流程均被拒绝但只有一个
    • 所有内容节点被拒绝但只有一个
  • 超级棒的角色
    • 包含“第一站点编辑器”角色以获得其权利。
    • 包含“第一站点编辑器”角色以获得其权利。

我该怎么办?我是否被迫编辑“每个人”角色?我不愿意这样做,因为我会被迫做大量的测试,以确保我的编辑不会无意中影响另一组。

2 个答案:

答案 0 :(得分:1)

我认为您可以拒绝对content节点的后代进行读取访问,然后显式设置对要显示它们的content项的单个后代节点的读访问权。

E.g。

  • content [拒绝后代读取权限]
    • site1
    • site2 [允许对此项目和子项目的读取权限]
    • site3

如果这不起作用(我自己没试过)请告诉我,我会回过头来。

答案 1 :(得分:1)

在工作流程和用户可以访问的内容中,需要记住两件事。首先,用户必须对项目具有写入权限才能在项目上执行工作流程命令。它一点都没有。甚至在他们的工作箱中看到它。这只是编辑而已,这只是基本的安全性。不太为人所知的是:如果项目位于工作流程中,则用户还必须具有工作流状态本身的工作流状态访问权限。

因此,如果项目处于工作流状态“等待审批”,有2个选项..批准和拒绝,则需要将该角色或用户设置为在“等待批准”中具有工作流状态写入(以及可选的删除) “工作流状态项。然后,为了让他们看到并能够执行批准或拒绝操作,您需要为他们希望他们能够看到的操作提供工作流状态执行权限。如果他们没有设置所有这些访问,则工作流命令甚至不会显示给用户。