Liferay 开放式Cmis API无法访问Alfresco';s";“继承父空间权限”;

Liferay 开放式Cmis API无法访问Alfresco';s";“继承父空间权限”;,liferay,acl,alfresco,cmis,Liferay,Acl,Alfresco,Cmis,我正在开发一个类似于“Documents and Media”的liferay portlet,它连接到Alfresco存储库,并使用apache chemistry open cmis API与存储库项进行交互 我几乎已经完成了通过ACE应用权限的工作,但我有一个主要问题,就是alfresco的“继承父空间权限”功能,它将父文件夹的属性传播到所有子文件夹。看起来cmis不支持此功能,但我必须找到从liferay编辑此属性的方法 虽然没有任何可用的高级API来编辑此属性,但我想我可以通过使用Al

我正在开发一个类似于“Documents and Media”的liferay portlet,它连接到Alfresco存储库,并使用apache chemistry open cmis API与存储库项进行交互

我几乎已经完成了通过ACE应用权限的工作,但我有一个主要问题,就是alfresco的“继承父空间权限”功能,它将父文件夹的属性传播到所有子文件夹。看起来cmis不支持此功能,但我必须找到从liferay编辑此属性的方法

虽然没有任何可用的高级API来编辑此属性,但我想我可以通过使用Alfresco的RESTAPI来解决这个问题。 做一些像“也许”这样的事情

但在做这件事之前,我想确定没有其他方法可以做到这一点。我的意思是,这是这里缺少的一个非常重要的功能。如果我理解正确,如果您无法访问该物业,您可以选择:

  • 禁用所有项目的继承,将失去好处 从继承和ACL传播

  • 或启用 继承所有空间,因为ACL的工作方式类似于授予规则 (而不是限制),让孩子们的资源总是更少 当您在存储库中深入导航时,会受到限制。这边,你 最终,所有受限资源都非常接近 “公司主页”空间,并将更高的可用性资源 深入到存储库空间结构中

  • 或者启用继承,并且每次要从 子资源,从另一个较低级别的API调用alfresco, 禁用继承(并丢失所有传播的ACE,如所需或 不),然后再次添加必要的ACE

  • 这听起来不合理,所以我真的很担心我在这里遗漏了一些东西,比如一个主要的高级API特性。有人能告诉我,我的方法是否正确,低级API调用是否是唯一可用的选项?

    CMIS不支持更改ACL继承设置。您可以确定哪些ACE是继承的,但不能打开和关闭继承。您必须编写自己的web脚本并从portlet调用它。

    我不知道我可以确定哪些ACE是继承的。实际上我可能更喜欢那样做。非常感谢。