Liferay включить организацию или сообщество по роли - PullRequest
0 голосов
/ 01 апреля 2011

Я работаю над новой реализацией liferay.У меня есть все мои пользователи во внешней системе, и я использовал внешнюю среду.аутентифицироваться через мою собственную систему аутентификации.Я также храню роли в этой же системе.Мне удалось успешно передать их в liferay, чтобы все мои роли пользователей были доступны в liferay.

Я хотел бы создать организацию или сообщество, связанное с ролью.Например, если у меня есть роль под названием «myusers» во внешней системе, я хотел бы связать эту роль с организацией или сообществом в liferay.Затем, когда пользователь войдет в liferay с этой ролью, он сможет стать частью этой организации или сообщества.Возможно ли это в liferay?Я знаю, что это своего рода обратная связь с обычным процессом добавления ролей к пользователям, а затем добавления пользователя в сообщество или организацию.

Ответы [ 2 ]

2 голосов
/ 07 апреля 2011

Вы можете изменить приведенный ниже код, чтобы проверить, принадлежит ли пользователь к роли, а затем добавить его в соответствующую организацию.

Чтобы добавить пользователя во все организации:

public final static void addAllOrganizationstoUser(long userId) throws SystemException, PortalException {
    // gets all organizations
    List<Organization> organizations = OrganizationLocalServiceUtil.getOrganizations(ALL_POS, ALL_POS);
    long[] users = new long[]{userId};
    // register user to orgs
    for (Organization organization : organizations) {
      UserLocalServiceUtil.addOrganizationUsers(organization.getOrganizationId(), users);
    }
}
0 голосов
/ 21 апреля 2011

То, что я в итоге сделал, - это использование функции расширения, встроенной в liferay. Делая это, я позволяю ввести список ролей, которые должны быть сопоставлены с этой организацией. Это позволяет мне смотреть на роли моих пользователей при входе в систему и определять, в каких организациях они должны быть членами. Затем я программно добавляю / удаляю пользователей из организаций на основе ролей, определенных в атрибуте expando, и ролей, назначенных пользователю.

...