Settings
Client ID
Уникальный идентификатор клиента
Name
Отображаемое имя (например, в окне согласия (Consent))
Description
Описание
Enabled
Вкл/Выкл
Always Display in Console
Всегда показываться клиента в списках приложений пользователя в Account Management Console
Consent Required
Выводить окно согласия предоставления пользовательских данных клиенту
Login Theme
Тема оформления для клиента. Переопределяет тему, заданную в настройках реалма
Client Protocol
Протокол, используемый для аутентификации (oidc, saml)
Access Type
По сути определяет тип клиента. Браузерное фронтовое приложение (Public) | Бэкенд, который модет получать токен и обращаться к другим бэкендам (Confidential) | Бэкенд, который только проверяет другие токены и нам нужно, чтоб keycloak знал о нём, чтобы правильно добавлять поля в токен, типа
aud(Bearer-only)Standart Flow Enabled
Authorization Code Flow в терминах oidc
Источник изображения: https://auth0.com/docs/get-started/authentication-and-authorization-flow/authorization-code-flowImplicit Flow Enabled
Источник изображения: https://auth0.com/docs/get-started/authentication-and-authorization-flow/implicit-flow-with-form-post
Direct Access Grants Enabled
Resource Owner Password Credentials Grant в терминах oidc Разрешает напрямую передавать клиенту имя пользователя и пароль, чтобы клиент мог самостоятельно получить пользовательских токен
Service Accounts Enabled
Access Type: confidentialClient Credential Grant в терминах oidc Позволяет клиенту иметь некие учётные данные (client_id+secret, signed jwt, etc…), с помощью которых он может получать токеныOAuth 2.0 Device Authorization Grant Enabled
Относится к OAuth 2.0 Device Authorization Grant
OIDC CIBA Grant Enabled
Access Type: confidentialОтносится к OIDC Client-Initiated Backchannel AuthenticationAuthorization Enabled
Включить настройку правил авторизации (появляется отдельный там
Authorization)Front Channel Logout
Если включено, используется
Источник изображения: https://www.youtube.com/watch?v=ObWSeNYkh8s Back Channel LogoutИсточник изображения: https://piraveenaparalogarajah.medium.com/configuring-openid-connect-back-channel-logout-using-wso2-identity-server-8c758310525fFront Channel Logout, когда логаут запросы отправляются клиентам из браузера, иначеBack Channel Logout, когда keycloak сам отправляет запросы клиентам Front Channel LogoutFront-Channel Logout URL
Front Channel Logout: trueКуда редиректить после логаутаRoot URL
Если в параметрах, типа Valid Redirect URIs, Base URL и др. используются относительные пути, то здесь можно задать рутовый, который будет к ним добавлен. Т.е. параметр чисто для удобства.
Root URL: https://example.com,Valid Redirect URIs: /somepathв результатеValid Redirect URIsпо факту будетhttps://example.com/somepathValid Redirect URIs
Standard Flow Enabled: trueURL’ы, на которые разрешено перенаправлять после логина в keycloak при использованииStandart Flow. По сути, это то, куда можно передаватьAuthorization Code, сгенерированный keycloak’ом, для дальнейшего получения токенаBase URL
URL, по которому keycloak может общаться с клиентским API
Admin URL
URL, по которому через API keycloak может отправлять клиенту различную административную информацию, типа политик или
backchannel logout. Поддержка обработки таких запросов должна быть реализована в API клиента. Если не задано, используетсяBase URLLogo URL
URL логотипа клиента. Например, для отображения на странице согласия (Consent)
Policy URL
URL на политику обработки данных (Privacy Policy)
Terms of service URL
URL на Условия пользования (TOS)
Web Origins
Standard Flow Enabled: trueЗначение хидераAccess-Control-Allow-Origin, который будет отдавать keycloak в ответе, когда к нему через ajax будут приходить запросы от веб-приложения, открытого в браузере. Защита от XSS, CSRF атак. Защиту реализует сам браузер, читая значение хидера и запрещая использовать ответ сервера, если в заголовке нет текущего открытого URLBackchannel Logout URL
URL, на который должен быть отправлен запрос для логаута из реалма при логауте пользователя через Backchannel. Если не задано, используется
Admin URLBackchannel Logout Session Required
Включать или нет session_id (sid) в logout токен при использовании
Backchannel Logout URLBackchannel Logout Revoke Offline Sessions
Добавлять в logout токен
revoke_offline_access, который означает, что клиенту также необходимо удалить сессии offline токенов при использованииBackchannel Logout
Credentials
Здесь можно задать учётные данные для аутентификации клиента, в случае если в клиент настроен с Access Type: confidential и Service Accounts Enabled: true
Keys
Если в Credentials используется Signed JWT как учётные данные клиента, то в этом разделе можно настроить то, как проверять подпись JWT-токена
Roles
Роли, специфичные для клиента. Роль может быть назначена обычным и service-account пользователям. В токене роли будут перечислены в scope resource_access.<client>.roles, если у клиента <client>, в настройках Scope разрешено добавление этой роли в токен
Client Scopes
Переопределяет реалмовые Client Scopes, которые были применены при создании клиента
Mappers
Маппинги, которые в том числе позволяют прокидывать/изменять параметры в scope, добавляемые в токен
Scope
Позволяет ограничить то, какие роли добавляются в scope токена. Например, пользователь аутентифицируется в веб-приложении, которое использует клиента Client1 для работы с keycloak, при этом у пользователя добавлена роль RoleClient2 клиента Client2. Мы не хотим, чтобы в токене, получаемом для Client1 были указаны роли для клиента Client2. В таком случае мы отключаем Full Scope Allowed и настраиваем, какие конкретно роли разрешено добавлять в токен.
Authorization
Authorization Enabled: true
Revocation
Позволяет отозвать/пометить невалидными все сессии и токены, полученные ДО указананной даты. Кнопкной Set to now будет установлено Not Before на текущую дату, а затем через Push нужно отправить эту политику всем клиентам на настроенные для них Admin URL. На клиенте должен быть реализован API и функции, которые применяют эти политики, чтобы по факту начать отбрасывать невалидные токены и сессии.
Sessions
Позволяет смотреть текущии активные сессии для данного клиента
Offline Access
Позволяет посмотреть, кто и когда получил offline токены
Installation
Здесь просто можно сгенерировать конфиги для подключения приложений к keycloak
Service Account Roles
Позволяет задать роли для service-account пользователя текущего клиента, если Access Type: confidential и Service Accounts Enabled: true








