Реализация SCIM для Spring Boot SAML и OKTA

Мое требование - реализовать сервер SCIM 2.0 для приложения Spring Boot, которое поддерживает SAML для аутентификации OKTA.

Я не нашел какой-либо библиотеки, предоставленной Spring Boot для SCIM-сервера, и никакой документации для нее не существует в Spring Repos.

Я нашел некоторые сторонние реализации, такие как Better Cloud SCIM 2.0 или WSO2 Charon и т. Д. Но следует ли мне использовать эти сторонние реализации? Потому что что, если их репозитории Git Hub будут испорчены позже или мы не сможем решить наши проблемы.

Также, если не существует документации для реализации сервера SCIM в Spring Boot. Тогда следует ли рассматривать это просто как реализацию других успокаивающих API?

Мы будем очень благодарны за любую помощь в этом вопросе.


person gbhati    schedule 25.05.2020    source источник


Ответы (2)


Я наблюдаю за SCIM API моей компании. Пока что я видел, что официальной библиотеки Spring нет, и вы должны придерживаться описания протокола, чтобы предоставить свою реализацию (подробнее см. Здесь: https://tools.ietf.org/html/rfc7644).

Несмотря на отсутствие официальной библиотеки Spring Boot (это было бы круто, согласен!), Я использую эту библиотеку из тридцати партий: https://github.com/pingidentity/scim2. В нем есть все ресурсы, необходимые для предоставления доступа к вашим конечным точкам для операций пользователей, а также для фильтрации при получении пользователей, что может оказаться довольно сложным для реализации с нуля, поскольку спецификация предоставляет для него довольно обширный язык запросов.

person cristianoms    schedule 06.07.2020

Версия с открытым исходным кодом для облегченного сервера SCIM с весенней загрузкой.

https://bitbucket.org/wouter29/personify-scim-server/src

Для использования SAML можно подключить настраиваемый фильтр аутентификации Java, поскольку реализованы только токены Basic и Bearer. Не знаю, упоминается ли SAML в спецификациях / RFC

Можно выбрать уровень хранения: ldap, mongo, postgres или MySQL.

person Community    schedule 22.09.2020