Как изменить конечную точку назначения Spring SAML?

Можно ли изменить конечную точку назначения в Spring SAML? Значение по умолчанию: /saml/SSO.

Мне нужно изменить это на /sso. я отредактировал

<bean id="samlFilter"         class="org.springframework.security.web.FilterChainProxy">
<security:filter-chain pattern="/sso" filters="samlWebSSOProcessingFilter"/>

Но это не работает. URL*/sso* рассматривается как URL-адрес, требующий аутентификации, а не тот, который должен получать подтверждение SAML.

Я использую SSO, инициализированный поставщиком удостоверений, поэтому этот URL-адрес является тем, который получает XML-документ в кодировке base64 (почтовый запрос HTTP).

Если нет другого варианта, я сделаю перенаправление на стороне сервера с /sso на saml/SSO, но было бы лучше иметь возможность настроить этот URL в Spring. Самл конфигурация.


person Bartosz Bilicki    schedule 24.04.2015    source источник


Ответы (1)


Свойство filterProcessesUrl samlWebSSOProcessingFilter является правильным ответом и работает нормально.

В моем случае для filterProcessesUrl должно быть установлено значение «/sso». У меня это не сработало, потому что я устанавливал полный URL-адрес конечной точки (схема://сервер:порт/contextPath/sso), а не просто путь.

Как указано в документации, несколько других свойств должны иметь одинаковые значения (фильтр samlFilter и метаданные поставщика услуг).

Наконец, утверждения SAML (XML-документ от поставщика удостоверений) должны содержать те же URL-адреса, которые настроены в поставщике услуг.

person Bartosz Bilicki    schedule 24.04.2015
comment
как или где я могу изменить код, чтобы сделать вышеуказанные изменения? - person Guru; 04.03.2019
comment
в конфигурации xml (или java) для ваших компонентов SAML. - person Bartosz Bilicki; 04.03.2019