如何以编程方式为liferay中的用户分配站点管理角色?

时间:2015-04-02 15:47:55

标签: liferay hook liferay-6 liferay-theme

我通过调用UserLocalServiceUtil.addUser(....)以编程方式创建用户,并且能够通过调用UserLocalServiceUtil.addRoleUser(userSiteId, userId)为创建的用户分配站点。它工作正常。我可以为用户分配站点成员身份。但是,如何为创建用户分配“站点管理”权限。 (因此,我可以将用户指定为网站成员,但我需要将用户指定为网站管理员)

请提出任何建议..

2 个答案:

答案 0 :(得分:4)

使用UserGroupRoleLocalServiceUtil分配"站点管理"站点角色下的角色。

Role role = RoleLocalServiceUtil.getRole(companyId, "Site Administrator");
long[] SiteroleIds = {role.getRoleId()};
UserGroupRoleLocalServiceUtil.addUserGroupRoles(userId, siteId, SiteroleIds);

答案 1 :(得分:2)

您可以使用RoleLocalServiceUtil来获取任何角色的对象。

Role role = RoleLocalServiceUtil.getRole(roleId);
UserLocalServiceUtil.addRoleUser(role.getRoleId(), user.getUserId());
UserLocalServiceUtil.updateUser(user);