Генерация метаданных поставщика услуг Spring Security SAML - PullRequest
0 голосов
/ 01 марта 2019

Hello Spring Security: как профессионалы, так и энтузиасты SAML,

Например, генерация метаданных поставщика услуг выдает что-то вроде

<md:AssertionConsumerService Location="http://localhost:8080/<app-servlet-context>/saml/SSO"/>

при развертывании и запуске в локальном контейнере Tomcat, который можно использоватьпо Identity Management для настройки SAML Consumer URL.

Мы используем Okta и OneLogin для тестирования.Все довольны.

Проблема, с которой я сталкиваюсь, заключается в том, что та же конфигурация веб-приложения, развернутая в докере, предварительно настроенная с определенной записью DNS, возвращает

<md:AssertionConsumerService Location="http://<app-context-root>:8080/<app-servlet-context>/saml/SSO"/>

, заменяя localhost корневым контекстом приложения (по умолчанию)?).

Фактический домен http://<app-name>.<company-domain>.com нигде не найден, что делает значение местоположения службы поддержки пользователей непригодным для настройки SSO, инициированного IdP.

То же самое для значения местоположения службы единого выхода из системы.

Может ли кто-нибудь помочь мне разобраться в этом поведении и настроить мою реализацию, чтобы расположение для AssertionConsumerService и SingleLogoutService, указанное в метаданных поставщика услуг, выглядело как

<md:AssertionConsumerService Location="http://<my-app-dns-domain-name>:8080/<app-servlet-context>/saml/SSO"/>

<md:SingleLogoutService Location="http://<my-app-dns-domain-name>:8080/<app-servlet-context>/saml/SingleLogout"/>

Спасибо!

1 Ответ

0 голосов
/ 04 марта 2019

Как вы генерировали свои метаданные?Вы делали это программно?

Если да, вы можете использовать метод setEntityBaseURL () класса MetadataGenerator.

...