Реализация поставщика удостоверений с помощью SAML V2 и Java

После успешного внедрения SAML-V2 Service Provider (SP); для поддержки некоторых конкретных вариантов использования мне нужно реализовать собственный SAML-2 IdP. После ознакомления с документацией OASIS и многие другие о протоколе SAML, я начал его внедрять.

  • Мой вариант использования - это всего лишь один профиль (Web Browser SSO Profile) только с SP-Initiated SSO: Redirect Bindings.

Я ищу некоторую бережливую стороннюю библиотеку или реализацию на основе java, которую я могу ссылаться / использовать для ускорения реализации и настройки поверх этого.

Будем признательны за любые рекомендации или предложения в этом направлении.

Чтобы быть конкретным, я ищу любое / все из нижеприведенных:

  • Простая в использовании библиотека с открытым исходным кодом для реализации SAML-V2 Identity Provider в Java.
  • Подробная документация / спецификация для вышеуказанного профиля.
  • Любые советы от экспертов, которые имеют прошлый опыт внедрения такого рода IdP.

Для SP доступно множество материалов. Однако очень мало и сложно для IdP. Вот некоторые из реализаций на основе Java, которые я уже ищу: KeyCloak и Lite-IdP.


person Procrastinator    schedule 05.08.2019    source источник
comment
Внедрение IdP, совместимого с SAMLv2, требует значительных усилий. Вы даже можете пройти тест на соответствие. Интересно, почему нельзя использовать существующий, даже бесплатный.   -  person Bernhard Thalmayr    schedule 05.08.2019


Ответы (2)


«Очень мало и сложно» верно, потому что создание реального поставщика удостоверений - серьезный проект. OpenSAML, поскольку библиотека - лучший вариант для Java - многие реализации корпоративного уровня то, о чем мы знаем, построены на нем. Хорошим упрощенным примером использования OpenSAML в контексте IdP является https://github.com/OpenConext/Mujina.

Lite IdP написан на Go. Если вы открыты для вариантов, отличных от Java, отлично подойдет SimpleSAMLphp, он определенно лучше документирован, чем многие другие.

person identigral    schedule 11.08.2019

Я бы разместил это как комментарий, но у меня недостаточно репутации. Но здесь у вас почти такой же вопрос относительно Spring SAML: using-spring-saml-as-an-idp-вместо-an-sp

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

Ваше здоровье

person mTheSame    schedule 08.08.2019