权限授予了什么方面的应用

时间:2014-02-04 10:52:34

标签: configuration permissions alfresco

我知道这个以及在Alfresco论坛上已多次解决的问题:

http://forums.alfresco.com/forum/developer-discussions/content-modeling/permissions-controlled-based-content-aspects-10022006 http://forums.alfresco.com/forum/developer-discussions/content-modeling/permission-aspect-05022008-1510

还有一些文件解决了这个问题:

http://wiki.alfresco.com/wiki/Security_and_Authentication#How_to_add_your_own_type_or_aspect.2C_assign_permissions_for_it.2C_configure_it_and_secure_a_service_that_uses_it_ ....

http://wiki.alfresco.com/wiki/PermissionModelDTD

简而言之,如果应用了特定方面,我正尝试将现有权限组“CreateChildren”授予“Consumer”。这是我添加到我的自定义'permissionDefinitios.xml'(我省略了默认的XML内容):

导入我的自定义命名空间

                   

<namespace uri="http://www.alfresco.org/model/mynamespace/1.0" prefix="my"/>

为“my:aspect”方面定义权限组。我希望此权限组包含现有的“CreateChildren”权限组

<permissionGroup name="CreateComments" requiresType="true" expose="false">
    <includePermissionGroup permissionGroup="CreateChildren" type="sys:base" />
</permissionGroup>

将先前定义的权限组授予“消费者”角色,类型为“my:aspect”

<!-- The Consumer permission allows read to everything by default.                  -->
<permissionGroup name="Consumer" allowFullControl="false" expose="true" >
    <includePermissionGroup type="sys:base" permissionGroup="Read"/>
    <includePermissionGroup type="my:aspect" permissionGroup="CreateComment"/>
</permissionGroup>

此设置的结果是具有“使用者”角色的用户可以默认在任何站点中创建子级,无论是否在节点上应用了方面。我做错了吗?这是这种配置的预期结果吗?

由于我采用了'可拥有'的模型或示例,我想知道问题是否可能是我使用现有权限'CreateChildren'而不是完全定义自定义低级别权限和权限组。我也注意到有一个“可拥有”方面的服务,我是否也需要实现我的服务?我不是这样,因为这项服务看起来必须与政策实施,我认为我并不是我所关注的。

1 个答案:

答案 0 :(得分:1)

您是否尝试过使用动态授权机构执行此检查?例如,在露天源中查看OwnerDynamicAuthority.java。使用这种方法,您只需检查节点是否具有方面,以及是否为该节点授予用户createChildren权限。