Keycloak. Описание настроек Realm'а

Realm Settings

General

  • Name

    Название/ID реалма

  • Display name

    Отображаемое имя

  • HTML Display name

    Отображаемое имя с возможность использования html-тегов (например, добавление лого). Если задано, то имеет приоритет над Display name

  • Frontend URL

    Позволяет для реалма задать отдельное доменное имя. Например, можно сделать такой матчинг auth.example.com -> sso.example.com/auth/realms/myrealm. Обработкой занимается встроенный веб-сервер. То же самое можно реализовать через reverse-proxy, типа nginx, с установкой Host хидера при проксировании и “обрезанием” путей

  • Enabled

    Вкл/Выкл

  • User-Managed Access

    Включить управление своими ресурсами в Account Management Console (auth/realms/myrealm/account/resource)

  • Endpoints

    Ссылки OIDC/SAML, где можно получить все доступные точки входа для проктоколов

Login

  • User registration

    Разрешить самостоятельную регистрацию

  • Edit username

    Разрешить изменять имя пользователя

  • Forgot password

    Выводить ссылку восстановления пароля на странице логина

  • Remember Me

    Галочка “запомнить меня” на странице логина. При логи в браузер будет отправляться постоянная кука вместо временной, которая удаляется при закрытии браузера. Так пользователь останется залогиненым не до момента закрытия браузер, а до момента истечения сессии, на которую указывает кука

  • Verify email

    Требовать подтверждения email

  • Login with email

    Позволяет логиниться с email-адресом в качестве логина

  • Require SSL

    Требовать подключение по https. Можно: отключить | требовать для всех, кроме localhost и приватных сетей | требовать для всех

Keys

  • Active

    Список криптографических ключей, которым подписываются новые токены и по которым могут проверяться старые. Используются протоколами аутентификации. Например, для подписывания JWT-токенов

  • Passive

    Список криптографических ключей, по которым могут проверяться старые токены. Новые от этих ключей не выпускаются

  • Disabled

    Сисок отключенных ключей

  • Providers

    По сути сами ключи, а точнее провайдеры, которые их генерируют

Email

Настройки SMTP сервера для отправки email

Themes

Настройка тем оформления и поддерживаемых языков

Localization

Переопределение текстов локализации для выбранной темы

Cache

Сброс кешей

Tokens

Настройки параметров токенов

  • Default Signature Algorithm

    Алгоритм для подписи токенов по-умолчанию

  • Revoke Refresh Token

    Ограничивает количество использований refresh токена. Запрещает иметь более одного активного refresh токена.

  • SSO Session Idle

    Если пользователь неактивен дольше указанного времени, то сессия истекает. Касается и токенов, и браузеров

  • SSO Session Max

    Максимальное время жизни сессии, после чего сессия истекает. Касается и токенов, и браузеров

  • SSO Session Idle Remember Me

    То же самое, что SSO Session Idle, но при нажатом “Запомнить меня”

  • SSO Session Max Remember Me

    То же самое, что SSO Session Max, но при нажатом “Запомнить меня”

  • Offline Session Idle

    offline_access Если пользователь неактивен дольше указанного времени, то offline токен отзывается

  • Offline Session Max Limited

    offline_access Включает настройку максимального времени жизни сессий

  • Client Session Idle

    То же самое, что SSO Session Idle, но для refresh токена. Если на задано, то используется SSO Session Idle

  • Client Session Max

    То же самое, что SSO Session Max, но для refresh токена. Если на задано, то используется SSO Session Max

  • Access Token Lifespan

    Максимальное время жизни access токена

  • Access Token Lifespan For Implicit Flow

    Максимальное время жизни access токена для Implicit Flow

  • Client login timeout

    Максимальное время, за которое клиент должен закончить Authorization Code Flow в OIDC

  • Login timeout

    Максимальное время всего процесса логина. Если превышено, то надо начинать заново

  • Login action timeout

    Максимальное время части процесса логина (одной страницы)

  • User-Initiated Action Lifespan

    Максимальное время для действий, которые разрешил/запросил сам пользователь. Типа сброса пароля

  • Default Admin-Initiated Action Lifespan

    Максимальное время для действий, которые разрешил/запросил админ. Типа сброса пароля

  • Lifetime of the Request URI for Pushed Authorization Request

    Максимальное вермя Request URI для Pushed Authorization Request

  • Override User-Initiated Action Lifespan

    Отдельная настройка таймаутов для конкретных действий, типа проверки email, сброса пароля и пр.. Переопределяет User-Initiated Action Lifespan для конкретного действия

  • OAuth2.0 Device Code Lifespan

    Относится к OAuth 2.0 Device Authorization Grant

  • OAuth2.0 Device Polling Interval

    Относится к OAuth 2.0 Device Authorization Grant

Client Registration

Позволяет приложениям самостоятельно создавать клиента в keycloak, без участия админа

  • Initial Access Tokens

    Токен, который используется для регистрации

  • Client Registration Policies

    Настройки политик для ограничения параметров регистрации клиента

Client Policies

Политики для ограничения того, какие параметры могут быть настроены у клиентов. Однако пока что это касается только автоматически создавемых клиентов. Политики нельзя применить к клиентам, создаваемым через админку

  • Profiles

    Профили с настройками клиента

  • Policies

    Политики, которые по различным условиям (например, типа клиента), применяют различные профили

Security Defenses

Настройка различных параметров безопасности реалма

Headers

Хидеры, которые будут устанавливаться сервером keycloak

  • X-Frame-Options

    Настройка разрешения сайту быть отрендеренным в <frame>, <iframe>, <embed>, <object>. Защита от clickjacking.

  • Content-Security-Policy

    Настройка того, что можно загружать внутри <frame>, <iframe>, <embed>, <object>

  • Content-Security-Policy-Report-Only

    То же самое, что Content-Security-Policy, но только для тестирования. Политики не применяются, а только мониторятся

  • X-Content-Type-Options

    Настройка запрета MIME sniffing браузером, когда вместо того, чтобы полагаться на хидер Content-Type, браузер сам определяет содержимое и обрабатывает его. Например, загружается какой-нибудь .jpg с Content-Type: image/jpg, но внутри javascript, который из-за MIME sniffing будет выполнен браузером

  • X-Robots-Tag

    Правила загрузки и индексирования страниц сайта

  • X-XSS-Protection

    Настройка остановки загрузки страницы при обнаружении XSS

  • HTTP Strict Transport Security (HSTS)

    Настройка заголовка Strict-Transport-Security. Уведомление браузера о том, что доступ должен быть осуществлён только посредством HTTPS вместо HTTP

Brute Force Detection

Настройка защиты от брутфорса (подбор паролей)

  • Enabled

    Вкл/Выкл

  • Permanent Lockout

    Включить постоянную блокировку пользователя при превышении Max Login Failures

  • Max Login Failures

    Максимальное количество попыток входа

  • Wait Increment

    На сколько увеличить время блокировки при очередном превышении Max Login Failures

  • Quick Login Check Milli Seconds

    Минимальное время между попытками входа. Если превышено, то блокировать

  • Minimum Quick Login Wait

    Минимальное(стартовое) время, на которое будет заблокирован пользователь

  • Max Wait

    Максимальное время блокировки

  • Failure Reset Time

    Через какое время сбрасывается счётчик неудачных попыток входа