Интеграция портала JBoss GateIn с PicketLink-STS (SAML)

Я пытаюсь выяснить (если это возможно), как интегрировать приложение JBoss GateIn Portal с PicketLink-STS, чтобы сгенерировать токен безопасности (т. Е. Утверждение SAML), который можно использовать для реализации "Единого входа" (таким образом, поговорить с обратной стороной). Сервисы EJB, которые требуют аутентификации).

Есть хорошая документация о том, как настроить JBoss 5.1 с сервисами EJB и защитить их с помощью PicketLink-STS для аутентификации с помощью токена безопасности (реализовано через домены безопасности и модули конфигурации входа в систему).

Однако неясно, как заставить приложение портала JBoss 5.1/GateIn интегрироваться с PicketLink-STS, чтобы портлеты могли получить токен безопасности (для вошедшего в систему пользователя), который затем мог бы быть передан сервисам EJB задней стороны, которые проверено на PicketLink-STS для аутентификации?

Интересно, возможно ли это или тупиковая дорога.

1 ответ

Я не эксперт в GateIn, но я показываю свои результаты после некоторых исследований.

Первый я основанный на версии 3.4 GateIn является последним для JBoss 5.

Чтобы настроить аутентификацию Gatein на основе токенов SAML, должна быть включена аутентификация SSO, для интеграции GateIn с SAML2 используется проект JBoss Picketlink Federation.

Аутентификация SAML SSO основана на круге доверия между SP и IDP. Это можно сделать, выполнив шаги, описанные в этой ссылке: Глава 6. Аутентификация и идентификация - SAML

Необходимые ресурсы можно скачать по следующему адресу:

Конфигурация STS является частью Identity Provider, и ее можно редактировать, как описано в следующей документации: Конфигурация службы SecurityToken (элемент PicketLinkSTS)

После того, как вы выполнили все шаги для включения токенов SAML на основе аутентификации (работают правильно), вы должны добавить следующий фильтр в GateIn (например, SAML2LogoutFilter):

<filter>
   <filter-name>PicketlinkSTSIntegrationFilter</filter-name>
   <filter-class>org.gatein.sso.agent.filter.PicketlinkSTSIntegrationFilter</filter-class>
</filter>

<filter-mapping>
   <filter-name>PicketlinkSTSIntegrationFilter</filter-name>
   <url-pattern>/*</url-pattern>
</filter-mapping>

Этот набор фильтров org.picketlink.identity.federation.core.wstrust.SamlCredential в org.jboss.security.client.SecurityClient, что позволяет распространять аутентификацию из билета SAML2 в базовые вызовы EJB или WS.

Смотрите также:

Я надеюсь, что это поможет.

Другие вопросы по тегам