将操作键添加到现有模型权限

时间:2013-03-13 16:07:17

标签: permissions liferay-6

我正在尝试添加自定义权限,即。特定于我使用ServiceBuilder构建的自定义模型(请参阅resource-actions / default.xml下面的摘录)。我的portlet已经部署,正在使用中。

我有两个问题:

  1. 我假设我必须在升级方法中重新创建适当的资源,以便考虑我的新操作密钥。是这样吗?
  2. 如果我必须再次向所有模型实例添加资源,是否会保留先前分配的权限?
  3. 祝你好运, 阿兰


    资源动作default.xml文件的摘录:

        <permissions>
            <supports>
                <action-key>VIEW</action-key>
                <action-key>DELETE</action-key>
                                ...
                <action-key>NEW_CUSTOM_PERMISSION</action-key>
            </supports>
                         ...
        </permissions>
    

1 个答案:

答案 0 :(得分:1)

许可系统中的逻辑是角色 - &gt;动作键 - &gt;资源

'动作键 - &gt;资源'在您的portlet的业务逻辑中定义,并将在其他页面或门户实例中随身携带。通过这种方式,您可以控制资源(页面,模型,服务构建器实体等)将如何由公开的操作键控制,以用于portlet的每个实例。

'角色 - &gt; Action-keys的关系可以通过两种方式对同一portlet的实例有所不同:

  1. 通过将角色分配给操作键(来自管理员的控制面板),您可以为部署portlet的特定门户使用完全不同的角色。这样,您还可以定义在该门户的每个页面中将遵循的一些最小/默认权限。对于expamle,在门户P1中,角色R1中的所有用户都可以执行操作A1,而在门户P2中,根本没有角色R1
  2. 使用权限表,您可以微调或覆盖上述权限,并为放置在同一门户网站的不同页面中的实例提供不同的权限。例如,在页面p1中角色R1的用户可以执行操作,而在另一个页面p2上,他们不能
  3. 您可以将操作键想象为资源和角色之间的中间层,为您提供抽象创建角色到资源绑定的完美组合