Keycloak — это open-source система управления идентификацией и доступом (IAM - Identity and Access Management), разработанная Red Hat. Она предоставляет аутентификацию, авторизацию и управление пользователями для веб-приложений, API и микросервисов.
https://youtu.be/FyVHNJNriUQ?si=sOrxT6MqX54oxRnO
📌 Основные функции Keycloak
1️⃣ Аутентификация пользователей
- Поддержка OAuth 2.0, OpenID Connect (OIDC) и SAML 2.0.
- Single Sign-On (SSO) — пользователи входят в одну систему и автоматически аутентифицируются в других.
- Многофакторная аутентификация (MFA) — поддержка OTP, WebAuthn.
2️⃣ Авторизация (RBAC, ABAC, Policies)
- Role-Based Access Control (RBAC) — контроль доступа на основе ролей.
- Attribute-Based Access Control (ABAC) — управление доступом на основе атрибутов пользователя.
- Fine-Grained Permissions — продвинутая настройка прав доступа.
3️⃣ Управление пользователями
- Создание, удаление и обновление пользователей.
- Управление группами и ролями.
- Интеграция с LDAP и Active Directory.
4️⃣ Поддержка федерации и интеграции с IdP (Identity Providers)
- Вход через Google, Facebook, GitHub, Azure AD и другие IdP.
- Поддержка Social Login.
5️⃣ Управление токенами (JWT, Refresh Tokens)
- Генерация, обновление и проверка JWT-токенов.
- Управление временем жизни токенов.
6️⃣ Интеграция с микросервисами и API
- Поддержка Spring Boot, Node.js, Quarkus, .NET.
- Гибкость интеграции с NGINX, Kubernetes, API Gateway.
🎯 Где используется Keycloak?
- Корпоративные порталы и SaaS-приложения
- E-commerce (авторизация пользователей, управление клиентами)
- API Gateway и микросервисы (аутентификация сервисов)
- Облачные и on-premise системы
✅ Почему стоит использовать Keycloak?
✔️ Готовое решение для SSO и управления пользователями
✔️ Гибкость и поддержка стандартных протоколов (OAuth 2.0, OIDC, SAML)
✔️ Легкость интеграции с различными сервисами и API
✔️ Open-source, активное сообщество и поддержка Red Hat