是否可以在露天设置permissionsDefinition.xml
,不允许GROUP_USERS
下载文件但查看内容列表?
我试图在.xml文件中设置这样的配置。
这是Read
权限组的原始定义:
<permissionGroup name="Read" expose="true" allowFullControl="false">
<includePermissionGroup type="sys:base" permissionGroup="ReadProperties"/>
<includePermissionGroup type="sys:base" permissionGroup="ReadChildren"/>
<includePermissionGroup type="sys:base" permissionGroup="ReadContent"/>
</permissionGroup>
所以简单的尝试就是删除ReadContent的权限,并将组更改为:
<permissionGroup name="Read" expose="true" allowFullControl="false">
<includePermissionGroup type="sys:base" permissionGroup="ReadProperties"/>
<includePermissionGroup type="sys:base" permissionGroup="ReadChildren"/>
</permissionGroup>
根据这个,我创建了一个新的permissionGroup,如下所示:
<permissionGroup name="Reader" allowFullControl="false" expose="true" >
<includePermissionGroup permissionGroup="Read" type="sys:base" />
<includePermissionGroup type="sys:base" permissionGroup="ReadPermissions"/>
</permissionGroup>
以后这个小组被包含两次,一次在<permissionSet type="cm:content"/>
和<permissionSet type="cm:folder"/>
。
为了测试这一点,我破坏了空间和父文件夹的继承权,并创建了一个新用户,该用户只有GROUP_USERS
的成员且具有reader
的权限。
虽然我可以在查询结果中看到文档,但我无法使用session.getObject(id)获取该对象的实例。我总是得到CmisRuntimeException
Message: Object Info is missing
。只要我再次添加ReadContent权限,我就能再次通过Id获取对象。
因此,为了获得对象的实例,我需要允许ReadContent,即使我只想获取对象的实例以进行只读任务。
答案 0 :(得分:2)
是的,根据文档here
修改访问控制时,请勿尝试拆分ReadProperties和ReadContent。这对搜索没有意义。节点及其所有属性(包括内容)将作为一个实体编制索引。无法对内容和属性的访问权限进行拆分评估。搜索必须应用这两个标准,以便不泄漏信息。其他服务(如复制)可能无法按预期运行,也可能产生奇数状态的节点。