Keycloak, OpenID Connect и LDAP в корпоративной среде
Как централизовать авторизацию в современной компании? Когда в инфраструктуре десятки систем, а управление правами доступа превращается в постоянную точку напряжения — приходит время пересобрать подход. В статье мы разбираем, как связать Keycloak, OpenID Connect и LDAP в единую архитектуру доступа. Материал будет полезен тем, кто отвечает за устойчивость, масштабируемость и безопасность ИТ-ландшафта: от архитекторов до руководителей цифровых инициатив.
LDAP (Lightweight Directory Access Protocol) — традиционная база для управления пользователями и группами в корпоративной среде. Он лежит в основе Active Directory и OpenLDAP, обеспечивает базовую идентификацию и разграничение прав.
Однако с ростом количества сервисов и усложнением процессов появляются ограничения:
На практике это означает, что управление доступом теряет управляемость: новые сотрудники получают доступ не сразу, изменения не вступают в силу оперативно, а архитектура становится хрупкой.
Keycloak — это open source-сервер аутентификации, который позволяет строить централизованную модель доступа для широкого круга сервисов. Он умеет подключаться к LDAP, выступать как провайдер OpenID Connect, реализовывать политики 2FA, управлять сессиями и ролями.
В большинстве случаев Keycloak применяют там, где:
Keycloak не заменяет LDAP, а надстраивается над ним. Это прослойка, которая позволяет построить архитектуру с явным контролем и гибкой конфигурацией.
Ниже — базовая схема архитектуры авторизации с использованием Keycloak как прослойки между LDAP и корпоративными сервисами. Она отражает поток аутентификации и авторизации в типичной инфраструктуре.
OpenID Connect (OIDC) — это расширение протокола OAuth2, обеспечивающее аутентификацию. Он получил широкую поддержку во многих корпоративных системах: GitLab, Grafana, Kubernetes, ArgoCD и др.
Преимущества OIDC:
Keycloak реализует OIDC и позволяет гибко настраивать клиентов, адаптируя протокол под особенности системы: форматы токенов, синхронизацию атрибутов, валидацию сессий.
Jira и Confluence
Jira может быть напрямую подключена к LDAP. Однако управление группами ограничено: внешние группы нельзя редактировать, а синхронизация изменений занимает время.
Confluence, как правило, использует Jira как источник пользователей. Это означает, что управление правами осуществляется через внешний каталог, но через интерфейс Jira.
GitLab
GitLab поддерживает как LDAP, так и OIDC. При использовании LDAP возникают проблемы с задержкой синхронизации групп. Интеграция с Keycloak через OIDC позволяет:
На практике это снижает нагрузку на администраторов и ускоряет процессы подключения/отключения доступа.
Kerberos используется в доменных структурах и обеспечивает безопасную аутентификацию без передачи пароля. Radius применяется для контроля доступа на сетевом уровне (VPN, Wi-Fi).
Keycloak не заменяет эти протоколы, но может дополнять их:
Это повышает гибкость и расширяет архитектурные сценарии.
Внедрение Keycloak и переход на централизованную модель не отменяет административной работы:
Важно учитывать: ключ к устойчивости — не в полном отказе от ручных операций, а в выстраивании повторяемых сценариев, прозрачных процессов и системной роли администраторов.
Чтобы обеспечить управляемость и предсказуемость доступа, важно рассматривать не только архитектуру, но и жизненный цикл учётной записи: от создания до удаления. Ниже — схема этого процесса в связке с HR-системой, LDAP и Keycloak.
В организациях с десятками тысяч пользователей, множеством доменов и сервисов Keycloak может выступать как единый шлюз авторизации. Он позволяет:
Важно понимать, что Keycloak — это не «внедрили и забыли», а часть архитектуры, которая требует сопровождения, развития и встраивания в процессы.
Если вы внедряете Keycloak, переходите на SSO или ищете способ организовать доступ через OpenID Connect — мы можем помочь. В Etence мы:
Если тема близка — напишите нам. Посмотрим, как сделать управление доступом устойчивым, гибким и прозрачным именно для вашей команды.
13.06.2025