Alfresco权限查看节点内容列表,但拒绝下载
是否可以在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
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中的用户,这是一个非常好的提议。再次感谢您的反馈:)。我们已经建立了一个小的自定义查看器,所以共享将不是一个选项。从您的回复中,我认为现在的答案是“阻止”应用程序级别的下载。不理想,但对于初稿来说,这应该是可以的。祝你度过美好的一天,再次感谢你。