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