Интеграция портала JBoss GateIn с PicketLink-STS (SAML) - PullRequest
7 голосов
/ 09 сентября 2011

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

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

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

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

1 Ответ

0 голосов
/ 06 ноября 2014

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

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

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

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 .

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

Надеюсь, это поможет.

...