Liferay 6.2:更改一个角色的权限以查看角色或为用户分配角色
Liferay 6.2: change one role´s permission to view roles or assign roles to users
我正在编写一个脚本来更改多个用户的权限,并且在一个步骤中,我需要选中位于角色 -> 权限的矩阵中的一些框。换句话说,我需要重新定义哪些用户能够查看或分配一些其他角色,这是一个巨大的变化,所以应该尽可能避免手动方法。
你知道我应该申请什么功能吗?可能与 "ResourcePermissionLocalServiceUtil.setResourcePermissions" 类似,但我不确定这里是否存在正确的 "action" 或者在这种情况下是否确实存在 "resource"。
提前致谢。
我终于解决了这个问题。它确实使用了函数 setResourcePermission。为了帮助周围的人,我将按顺序简要解释这些论点:
- long companyId:门户实例的id。
- 字符串名称:资源的名称,在本例中为 "com.liferay.portal.model.Role"。
- int 范围:必须与权限影响的关节有关。 1 是门户的整个实例,而 4 是...
中引用的唯一角色
- String primKey:是角色的 ID,可以 "manipulated" 由...
- long roleId:将对上一个参数中引用的角色具有权限的角色的 ID。
- String[] actionIds:确定动作的键数组。它们是 KEYS,而不是 ID。例如。查看,ASSIGN_MEMBERS...
因此,例如,这样的调用:
PermissionResourceLocalServiceUtil.setResourcePermissions(10000,"com.liferay.portal.model.Role",4,"20150",22000, {"VIEW", "ASSIGN_MEMBERS"});
将授予视图角色 22000 的权限,并将用户分配给 ID 为 10000 的门户实例中的角色“20150”。
编辑:相同功能的另一个版本是 setOwnerResourcePermissions,它是相同的,但让您可以指定权限的 ownerId。
试试这个:
ResourcePermissionLocalServiceUtil.setResourcePermissions(themeDisplay.getCompanyId(), DLFolder.class.getName(),
ResourceConstants.SCOPE_INDIVIDUAL, String.valueOf(folderId),
roleIdsRole,Actionlist);
Actionlist -[ACCESS,VIEW,UPDATE,DELETE,ADDSUBFOLDER]
using RoleLocalServiceUtil to get roleId
我正在编写一个脚本来更改多个用户的权限,并且在一个步骤中,我需要选中位于角色 -> 权限的矩阵中的一些框。换句话说,我需要重新定义哪些用户能够查看或分配一些其他角色,这是一个巨大的变化,所以应该尽可能避免手动方法。
你知道我应该申请什么功能吗?可能与 "ResourcePermissionLocalServiceUtil.setResourcePermissions" 类似,但我不确定这里是否存在正确的 "action" 或者在这种情况下是否确实存在 "resource"。
提前致谢。
我终于解决了这个问题。它确实使用了函数 setResourcePermission。为了帮助周围的人,我将按顺序简要解释这些论点:
- long companyId:门户实例的id。
- 字符串名称:资源的名称,在本例中为 "com.liferay.portal.model.Role"。
- int 范围:必须与权限影响的关节有关。 1 是门户的整个实例,而 4 是... 中引用的唯一角色
- String primKey:是角色的 ID,可以 "manipulated" 由...
- long roleId:将对上一个参数中引用的角色具有权限的角色的 ID。
- String[] actionIds:确定动作的键数组。它们是 KEYS,而不是 ID。例如。查看,ASSIGN_MEMBERS...
因此,例如,这样的调用:
PermissionResourceLocalServiceUtil.setResourcePermissions(10000,"com.liferay.portal.model.Role",4,"20150",22000, {"VIEW", "ASSIGN_MEMBERS"});
将授予视图角色 22000 的权限,并将用户分配给 ID 为 10000 的门户实例中的角色“20150”。
编辑:相同功能的另一个版本是 setOwnerResourcePermissions,它是相同的,但让您可以指定权限的 ownerId。
试试这个:
ResourcePermissionLocalServiceUtil.setResourcePermissions(themeDisplay.getCompanyId(), DLFolder.class.getName(),
ResourceConstants.SCOPE_INDIVIDUAL, String.valueOf(folderId),
roleIdsRole,Actionlist);
Actionlist -[ACCESS,VIEW,UPDATE,DELETE,ADDSUBFOLDER]
using RoleLocalServiceUtil to get roleId