История одного SSO: как мы подружили два независимых каталога пользователей через Keycloak

Все блоги / Про интернет 20 мая 2025 15   

Привет, Хабр! Меня зовут Аскар Добряков, я ведущий эксперт направления защиты бизнес-приложений в К2 Кибербезопасность. При внедрении Single Sign-On, на первый взгляд, все должно идти по накатанной схеме: настраиваем федерацию со службой каталогов, связываем identity provider с service provider, проверяем работу токенов — и готово. Но дьявол, как всегда, кроется в деталях. Зачастую приходится решать нестандартные задачи. Например, как быть, если у вас две равноправных организации-партнера со своими требованиями к безопасности, и каждый хочет контролировать аутентификацию пользователей, но при этом пользователи одного партнера должны ходить в систему другого?

В этой статье я расскажу, как мы с Даниилом Золотаревым, инженером нашей практики защиты приложений, проводили разработку кастомного аутентификатора для Keycloak, который позволил элегантно решить техническую задачу, стоявшую перед головной и дочерней организациями. Покажу, как мы обошли ограничения штатной функциональности, не нарушая требований безопасности обеих сторон. В процессе вы увидите технические детали реализации, примеры кода и практические советы по созданию собственных аутентификаторов.

Думаю, статья будет полезна архитекторам, разработчикам и всем, кто интересуется тонкостями реализации сценариев SSO на базе Keycloak.

Читать далее
  • Оцените публикацию
  • 0

Похожие публикации

@
  • bowtiesmilelaughingblushsmileyrelaxedsmirk
    heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
    winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
    worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
    expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
    disappointedconfoundedfearfulcold_sweatperseverecrysob
    joyastonishedscreamtired_faceangryragetriumph
    sleepyyummasksunglassesdizzy_faceimpsmiling_imp
    neutral_faceno_mouthinnocent

Архив публикаций