如何知道网站管理员和权限的权限网站所有者有?

时间:2012-10-30 10:26:22

标签: liferay liferay-6 user-permissions

我如何知道以下Liferay角色的权限:

  1. 网站管理员
  2. 网站所有者
  3. 我看不到ResourcePermissions表中有关上述两个角色和Administrator角色等系统角色的任何条目,因此我认为这会导致Permission...Service类无效我的情况。


    用例

    我们需要做的是提供Site Administrator角色,但删除一些特定Site Administrator的权限应该无法更新网站设置或者无法访问某些屏幕控制面板等

    我们正考虑创建一个单独的角色(Custom Site Admin),因为我们无法为Liferay创建的角色定义权限,然后我们会将Site Administrator的所有权限分配给此角色并删除一些用例中指定的权限。


    修改
    另一个问题是,如果我创建一个新角色并分配所有权限&只需删除一些,是否会影响性能?


    版本: Liferay 6.1 GA2

    如果您对此问题了解其他一些解决方法,我将非常感激。

    由于

1 个答案:

答案 0 :(得分:5)

差异

管理员拥有他们描述的域的所有权限,只有一个值得注意的例外。

  • 他们无法分配或删除其他管理员。

例如,“站点管理员”被授予该站点的所有权限,但再次指派其他站点管理员。

对于您的用例,我将创建另一个角色。

另一个问题是,如果我创建一个新角色并分配所有权限&只是删除一些,会影响性能吗?

没有。考虑到有两个其他角色“guest”和“member”,它们的使用频率更高,需要以与新自定义角色相同的方式进行查找。

但是,您能告诉我网站所有者和网站管理员之间的权限究竟是什么?

所有迹象都表明它是硬编码的,因为PermissionChecker中的方法有isSiteAdminisSiteOwnerisOmniAdmin等方法,这些方法会检查用户是否具有这些角色并允许他们执行该特定操作。

通常,以下操作允许您为用户分配角色:

  • 具有“分配用户角色”
  • 操作的组权限
  • 具有“分配成员”操作的角色权限

但是,即使您将这些操作授予任何其他角色,如果不是“网站所有者”,您仍然无法让人们成为“网站管理员”或“网站所有者”