This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
сервис_keycloak [2026/02/14 14:21] val [Kubernetes] |
сервис_keycloak [2026/03/20 21:01] (current) val [Аутентификация пользователей WEB приложения] |
||
|---|---|---|---|
| Line 115: | Line 115: | ||
| * [[Сервис PostgreSQL]] | * [[Сервис PostgreSQL]] | ||
| + | * Kubernetes [[Система Kubernetes#Ingress]] | ||
| * Kubernetes [[Система Kubernetes#secrets tls]] | * Kubernetes [[Система Kubernetes#secrets tls]] | ||
| Line 134: | Line 135: | ||
| * Kubernetes [[Система Kubernetes#Volumes]] | * Kubernetes [[Система Kubernetes#Volumes]] | ||
| * [[https://www.keycloak.org/server/reverseproxy]] | * [[https://www.keycloak.org/server/reverseproxy]] | ||
| + | |||
| + | * !!! Вариант со встроенным postgres может завершиться ошибкой загрузки (не удается указать bitnamilegacy), можно заменить на внешний, устанавливаемый через [[Сервис PostgreSQL#Helm]] с указанием bitnamilegacy | ||
| <code> | <code> | ||
| Line 254: | Line 257: | ||
| * [[https://www.keycloak.org/securing-apps/oidc-layers]] | * [[https://www.keycloak.org/securing-apps/oidc-layers]] | ||
| + | |||
| + | * [[Практические примеры Keycloak]] | ||
| <code> | <code> | ||
| Line 265: | Line 270: | ||
| Valid redirect URIs: * | Valid redirect URIs: * | ||
| | | ||
| - | может понадобиться включить | + | для проверки получения токена через curl понадобиться включить |
| Direct access grants | Direct access grants | ||
| - | + | ||
| - | для ограничения доступа через client-secret можно настроить: | + | |
| - | Client authentication: yes | + | |
| - | Credentials | + | |
| - | Client Authenticator: Client ID and Secret | + | |
| - | Client Secret: будет сгенерирован, надо скопировать вместо "anystring" | + | |
| - | | + | |
| для передачи списка групп в токене понадобится: | для передачи списка групп в токене понадобится: | ||
| Client scopes -> | Client scopes -> | ||
| Line 279: | Line 278: | ||
| Configure a new mapper: Groups Membership | Configure a new mapper: Groups Membership | ||
| Name: groups | Name: groups | ||
| - | Configure a new mapper: Audience !!! Для "подсовывания" токена в .kube/config | + | Configure a new mapper: Audience !!! Для "подставки" токена в .kube/config |
| Name (и везде): any-client | Name (и везде): any-client | ||
| Line 293: | Line 292: | ||
| Token Claim Name: groups | Token Claim Name: groups | ||
| Full group path: No | Full group path: No | ||
| + | |||
| + | для ограничения доступа через client-secret можно настроить: | ||
| + | Client authentication: yes | ||
| + | Credentials | ||
| + | Client Authenticator: Client ID and Secret | ||
| + | Client Secret: будет сгенерирован, надо скопировать вместо "anystring" | ||
| </code> | </code> | ||
| Line 303: | Line 308: | ||
| <code> | <code> | ||
| - | webinar# curl -d "client_id=any-client" \ | + | $ curl -d "client_id=any-client" \ |
| -d "client_secret=anystring" \ | -d "client_secret=anystring" \ | ||
| -d "grant_type=password" \ | -d "grant_type=password" \ | ||
| Line 321: | Line 326: | ||
| <code> | <code> | ||
| -----BEGIN CERTIFICATE----- | -----BEGIN CERTIFICATE----- | ||
| - | ... | + | ...Второй сертификат... |
| -----END CERTIFICATE----- | -----END CERTIFICATE----- | ||
| </code> | </code> | ||