Alfresco权限查看节点内容列表,但拒绝下载

Alfresco权限查看节点内容列表,但拒绝下载,alfresco,opencmis,Alfresco,Opencmis,是否可以在alfresco中设置一个permissionsDefinition.xml,不允许GROUP\u用户下载文件,但可以查看内容列表 我已经尝试在.xml文件中这样设置配置 这是读取权限组的原始定义: <permissionGroup name="Read" expose="true" allowFullControl="false"> <includePermissionGroup type="sys:base" permissionGroup="ReadP

是否可以在alfresco中设置一个
permissionsDefinition.xml
,不允许
GROUP\u用户下载文件,但可以查看内容列表

我已经尝试在.xml文件中这样设置配置

这是
读取
权限组的原始定义:

<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>

后来这组被纳入两次,一次是在

为了测试这一点,我打破了空间和父文件夹的继承性,创建了一个新用户,他是
组用户
的唯一成员,并获得了
阅读器
的权限

实际问题 虽然我可以在查询结果中看到文档,但无法获得session.getObject(id)对象的实例。我总是收到带有
消息的
CmisRuntimeException
:缺少对象信息
。一旦我再次添加ReadContent权限,我就可以再次通过Id获取对象


因此,为了获取对象的实例,我需要允许ReadContent,即使我只想获取只读任务的对象实例。

是的,根据文档

修改访问控制时,不要尝试拆分ReadProperties和ReadContent。这对搜索没有意义。节点及其所有属性(包括内容)作为一个实体编制索引。无法拆分内容和属性的访问评估。搜索必须应用这两个标准,以免泄露信息。其他服务(如copy)可能无法按预期运行,或者可能会产生处于奇数状态的节点


非常感谢您的回复。但是,有没有其他方法可以将所有这些权限与下载内容的权限分开呢?我认为没有特定的下载权限,我猜如果用户可以阅读文档(内容和属性),那么他就可以下载它。你使用共享吗?如果是,我可以解释如何基于评估器隐藏/显示下载操作,以仅筛选组_users.Sam中的用户,这是一个非常好的提议。再次感谢您的反馈:)。我们已经建立了一个小的自定义查看器,所以共享将不是一个选项。从您的回复中,我认为现在的答案是“阻止”应用程序级别的下载。不理想,但对于初稿来说,这应该是可以的。祝你度过美好的一天,再次感谢你。