แแแแแกแแแแ แแกแฎแแแ แแแแแแแแแจแ แแ X5 Retail Group แแ แแ แแก แแแแแแแแแแกแ, แ แแแแแ แแก แแแแแ แแแแ, แแแ แแแแ แแ แแ แแแฅแขแแแแก แ แแแแแแแแ, แ แแแแแแแช แกแแญแแ แแแแแ แแแแฎแแแ แแแแแก แแแขแแ แแแแชแแแก. แแ แแแ แแแแแแแแแแแจแ แกแแญแแ แแ แแแแฎแแแ แแแแแแ แฃแฌแงแแแขแ แแแแแกแแแ แแ แแ แแแแแแแชแแแแแ แแแแ แแแ, แจแแแแแ แแ แกแแญแแ แแ แแ แแ Single-Sing-On (SSO) แกแแ แแแ แแก แแแแแงแแแแแ. แ แ แจแแแซแแแแ แแแฅแแแก, แ แแแแกแแช แแแแแขแแคแแแแชแแแก แแ แแแแแแแ แแแ, แ แแแแ แแชแแ AD แแ แกแฎแแแแ, แ แแแแแแกแแช แแ แแฅแแ แแแแแขแแแแแ แแขแ แแแฃแขแแแ, แฃแแแ แแแแแแงแแแแแ แกแฎแแแแแกแฎแแ แแ แแแฅแขแแแจแ. แกแแกแขแแแแแแก แแแแกแ แกแแฎแแแฌแแแแแแ "แแแแแขแแคแแแแชแแแก แแ แแแแ แแแ" แแแแ แกแแแแจแแแแแจแ. แงแแแแแแ แคแฃแแฅแชแแแแแแฃแ แแ แแแกแ แฌแแ แแแแแแแแแแแแ, แ แแแแ แแชแแ Keycloak, Gravitee Access Management แแ แ.แจ. แงแแแแแแ แฎแจแแ แแ แแแแแงแแแแแแก แจแแแแฎแแแแแแ แจแแแซแแแแ แแงแแก แแแแกแฎแแแแแแฃแแ: แแแแฅแแแแแแแ แฃแ แแแแ แแฅแแแแแแ, แแแแฎแแแ แแแแแก แแแแแฌแแแแแแ แแ แ.แจ. แแ แแกแแแ แแแแแฌแงแแแขแแแแแแแ แฉแแแแก แแแแแแแแแก แแฎแแ แแฅแแก แแแแแแแแแก แแ แแแแ แ - Keycloak.
Keycloak แแ แแก แฆแแ แแแแแก แแแแแขแแคแแแแชแแแกแ แแ แฌแแแแแแก แแแแขแ แแแแก แแ แแแฃแฅแขแ, แ แแแแแกแแช แแฌแแ แแแแแก RedHat. แแก แแ แแก แแแแแแแแแก แแ แแแฃแฅแชแแแก แกแแคแฃแซแแแแ SSO - RH-SSO แแแแแงแแแแแแ.
แซแแ แแแแแ แชแแแแแแ
แกแแแแ แแแแแฌแงแแแขแแแแแแแกแ แแ แแแแแแแแแแแ แแฃแจแแแแแก แแแแฌแงแแแ, แฃแแแ แแแแแฌแงแแแขแแ แแ แแชแแกแแแแก แขแแ แแแแแแ แแ แแแแแแแแแแ แแแ:
แแแแแขแแคแแแแชแแ แแ แแก แกแฃแแแแฅแขแแก แแแแแขแแคแแแแขแแ แแก แแแแ แแแแชแแแแแก แแ แแชแแแฃแ แ (แกแฎแแ แกแแขแงแแแแแ แ แแ แแแฅแแแ, แแก แแ แแก แกแแฎแแแแก, แจแแกแแแแก แแ แแแแ แแก แแแแแแ แขแแแ).
แแแแแแขแแคแแแแชแแ - แแก แแ แแก แแแแแแขแแคแแแแชแแแก แแ แแชแแแฃแ แ (แแแแฎแแแ แแแแแก แจแแแแฌแแแแ แฎแแแแ แแแ แแแแ, แฌแแ แแแ แแแฌแแแแแ แแแแฅแขแ แแแฃแแ แฎแแแแแฌแแ แแ แแ แ.แจ.)
แแแขแแ แแแแชแแ - แแก แแ แแก แ แแกแฃแ แกแแ แฌแแแแแแก แฃแแ แฃแแแแแงแแคแ (แแแแแแแแแ, แแ. แคแแกแขแแแ).
แแแ แแแแแแก แแ แแแแ แ Keycloak
แแแแแแแขแฃแ แ แแ แแก แฆแแ แแแแแก แแแแแขแแคแแแแชแแแกแ แแ แฌแแแแแแก แแแ แแแแก แแแแแฌแงแแแขแ, แ แแแแแแช แจแแฅแแแแแแ IS-แจแ แแแแแกแแงแแแแแแแ, แกแแแแช แจแแกแแซแแแแแแแ แแแแ แแกแแ แแแกแแก แแ แฅแแขแแฅแขแฃแ แแก แจแแแแแแแแแก แแแแแงแแแแแ.
Keycloak แแแแแแแแแ แคแฃแแฅแชแแแแก, แ แแแแ แแชแแ แแ แแฏแแ แแแ แจแแกแแแ (SSO), แจแฃแแแแแแแแแ แแแแแขแแคแแแแชแแ แแ แกแแชแแแแฃแ แ แจแแกแแแ, แแแแฎแแแ แแแแแก แคแแแแ แแชแแ, แแแแแแขแแก แแแแแแงแแแแแแ, แแแแแแแกแขแ แแขแแ แแก แแแแกแแแ แแ แแแแแ แแจแแก แแแ แแแแก แแแแกแแแ.
Keycloak-แแก แแแแ แแฎแแ แแแญแแ แแแ แซแแ แแแแแ แคแฃแแฅแชแแแแแแแแ:
- แแ แแฏแแ แแแ แจแแกแแแ แแ แแ แแฏแแ แแแ แแแกแแแ แแ แแฃแแแ แแก แแแแแแแชแแแแแกแแแแก.
- OpenID/OAuth 2.0/SAML-แแก แแฎแแ แแแญแแ แ.
- Identity Brokering - แแแแแแขแแคแแแแชแแ แแแ แ OpenID Connect แแ SAML แแแ แแแแแแก แแ แแแแแแแ แแแแก แแแแแงแแแแแแ.
- แกแแชแแแแฃแ แ แจแแกแแแ - Google, GitHub, Facebook, Twitter แแฎแแ แแแญแแ แ แแแแฎแแแ แแแแแก แแแแแขแแคแแแแชแแแกแแแแก.
- แแแแฎแแแ แแแแแก แคแแแแ แแชแแ - แแแแฎแแแ แแแแแแ แกแแแฅแ แแแแแแชแแ LDAP แแ Active Directory แกแแ แแแ แแแแแแ แแ แกแฎแแ แแแ แแแแแแก แแ แแแแแแแ แแแแแแ.
- Kerberos แฎแแแ - Kerberos แกแแ แแแ แแก แแแแแงแแแแแแ แแแแฎแแแ แแแแแก แแแขแแแแขแฃแ แ แแแขแแ แแแแชแแแกแแแแก.
- แแแแแแแกแขแ แแขแแ แแก แแแแกแแแ - แแแ แแแแขแ แแแแก แแ แแแแแฌแงแแแขแแก แแแ แแแแขแแแแก แแ แแแแแ แแแ แแแแกแแแแก แแแขแแ แแแขแแก แกแแจแฃแแแแแแ.
- แแแแแ แแจแแก แแแ แแแแก แแแแกแแแ - แแแแฎแแแ แแแแแก แแ แแคแแแแก แแแแแแแ แแแแกแแแแก.
- แแแแแฌแงแแแขแแก แแแ แแแแ แแแแแแแแแก แแแ แแแ แแขแแฃแ แแแแแขแแแแแ แแแงแ แแแแแแ.
- 2FA แแแแแแขแแคแแแแชแแ - TOTP/HOTP แแฎแแ แแแญแแ แ Google Authenticator-แแก แแ FreeOTP-แแก แแแแแงแแแแแแ.
- แจแแกแแแแก แแแแแแแแ - แจแแกแแซแแแแแแแ แแแแฎแแแ แแแแแก แแแแแ แแแแกแขแ แแชแแ, แแแ แแแแก แแฆแแแแแ แแ แแแแแขแแแ แแแ แแ แกแฎแแ.
- แกแแกแแแแแก แแแแแฏแแแแขแ - แแแแแแแกแขแ แแขแแ แแแก แจแแฃแซแแแแ แแแแฎแแแ แแแแแก แกแแกแแแแแก แแแ แแแ แแ แแ แฌแแ แขแแแแแแ.
- Token Mappers - แแแแฎแแแ แแแแแแ แแขแ แแแฃแขแแแแก, แ แแแแแแก แแ แกแฎแแ แกแแญแแ แ แแขแ แแแฃแขแแแแก แกแแแแแแแแฃแแแ แขแแแแแแแแกแแแแก.
- แแแฅแแแแ แแแแแขแแแแก แแแแแฏแแแแขแ แกแคแแ แแจแ, แแแแแแแชแแแกแ แแ แแแแฎแแแ แแแแแแก แจแแ แแก.
- CORS แแฎแแ แแแญแแ แ - แแแแแแขแแก แแแแแแงแแแแแแก แแฅแแ แฉแแจแแแแแฃแแ CORS แแฎแแ แแแญแแ แ.
- แกแแ แแแกแแก แแ แแแแแแแ แแก แแแขแแ แคแแแกแแแ (SPI) - SPI-แแแแก แแแแ แ แแแแแแแแ, แ แแแแแแช แกแแจแฃแแแแแแก แแแซแแแแ แแแแแแแคแแแฃแ แแ แแ แกแแ แแแ แแก แกแฎแแแแแกแฎแแ แแกแแแฅแขแแแ: แแแแแแขแแคแแแแชแแแก แแแแแแแแ, แแแ แแแแแแก แแ แแแแแแแ แแแ, แแ แแขแแแแแแก แ แฃแฅแ แแ แกแฎแแ.
- แแแแแแขแแก แแแแแแงแแแแแแ JavaScript แแแแแแแชแแแแแกแแแแก, WildFly, JBoss EAP, Fuse, Tomcat, Jetty, Spring.
- แแฎแแ แแแญแแ แ แกแฎแแแแแกแฎแแ แแแแแแแชแแแแแแ แแฃแจแแแแแกแแแแก, แ แแแแแแแช แแฎแแ แก แฃแญแแ แแ OpenID Connect Relying Party แแแแแแแแแแแก แแ SAML 2.0 แกแแ แแแกแแก แแ แแแแแแแ แแก แแแแแแแแแแแก.
- แแแคแแ แแแแแ แแแแแแแขแแแแก แแแแแงแแแแแแ.
CI / CD แแ แแชแแกแแแแกแแแแก, แแกแแแ Keycloak-แจแ แแแ แแแแก แแ แแชแแกแแแแก แแแขแแแแขแแแแชแแแกแแแแก, แจแแแซแแแแ แแแแแงแแแแแฃแ แแฅแแแก REST API / JAVA API. แแแแฃแแแแขแแชแแ แฎแแแแแกแแฌแแแแแแ แแแแฅแขแ แแแฃแแแ:
REST API
Java API
แกแแฌแแ แแแก แแแแแขแแคแแแแชแแแก แแ แแแแแแแ แแแ (แแแแแแแแแแ)
แแแแฎแแแ แแแแแแ แคแแแแ แแชแแแก แกแแ แแแกแแแแก แแแจแแแแแแ แแแแฎแแแ แแแแแแแก แแแแแแขแแคแแแแชแแแก แจแแกแแซแแแแแแแ.
แแกแแแ แจแแแซแแแแ แแแแแงแแแแแฃแ แแฅแแแก แแแแแกแแกแแแแแ แแแขแแ แแแแชแแ - แแฃ แแแแฎแแแ แแแแแแ แแฎแแแแแ แแแแแแขแแคแแแแชแแแก แกแแแฃแจแแ แกแแแแฃแ แแแแก แฌแแแแแฆแแแแ Kerberos-แแ (LDAP แแ AD), แแแจแแ แแแแ แแแขแแแแขแฃแ แแ แแแแแฌแแแแ แจแแกแแซแแแแแแแ Keycloak-แแ แแแแ แแแแฎแแแ แแแแแก แกแแฎแแแแกแ แแ แแแ แแแแก แฎแแแแฎแแ แจแแงแแแแแก แแแ แแจแ.
แแแแแแขแแคแแแแชแแแกแ แแ แแแแฎแแแ แแแแแแแก แจแแแแแแแ แแแขแแ แแแแชแแแกแแแแก แจแแกแแซแแแแแแแ แแแแแแแงแแแแ แ แแแแชแแฃแ แ DBMS, แ แแแแแแช แงแแแแแแ แแแขแแ แแแแแแงแแแแแ แแแแแแแแแ แฃแ แแแ แแแแจแ, แ แแแแแ แแก แแ แแฃแแแกแฎแแแแก แฎแแแแ แซแแแ แแแ แแแแขแ แแแก แแ แแแขแแแ แแชแแแก แแ แแแฅแขแแแแก แแแ แแฃแ แแขแแแแแแ. แแแแฃแแแกแฎแแแแแ, Keycloak แแงแแแแแก แฉแแจแแแแแฃแ DBMS-แก แแแ แแแแขแ แแแแกแ แแ แแแแฎแแแ แแแแแก แแแแแชแแแแแแก แจแแกแแแแฎแแ.
แแฎแแ แแแญแแ แแแ DBMS-แแแแก แกแแ แแ แชแแแแ แแ แแแแชแแแก: MS SQL, Oracle, PostgreSQL, MariaDB, Oracle แแ แกแฎแแ. แแฅแแแแ แงแแแแแแ แแแแแชแแแแแ Oracle 12C Release1 RAC แแ Galera 3.12 แแแแกแขแแ แ MariaDB 10.1.19-แแกแแแแก.
แแแ แแแแแแก แแ แแแแแแแ แแแ - แกแแชแแแแฃแ แ แจแแกแแแ
แจแแกแแซแแแแแแแ แแแแแแแก แแแแแงแแแแแ แกแแชแแแแฃแ แ แฅแกแแแแแแแแ. แแแแฎแแแ แแแแแแแก แแแแแแขแแคแแแแชแแแก แจแแกแแซแแแแแแแแก แแแกแแแฅแขแแฃแ แแแแแ แแแแแแงแแแแ Keycloack แแแแแแแกแขแ แแขแแ แแก แแแแกแแแ. แแแแแแแชแแแก แแแแจแ แชแแแแแแแแแ แแ แแ แแก แกแแญแแ แ แแ แแก แคแฃแแฅแชแแ แฎแแแแแกแแฌแแแแแแ แแ แจแแแซแแแแ แแแแฅแขแแฃแ แแแก แแ แแแฅแขแแก แแแแแกแแแแ แแขแแแแ.
แแแแฎแแแ แแแแแก แแแแแแขแแคแแแแชแแแกแแแแก แจแแกแแซแแแแแแแ OpenID/SAML Identity แแ แแแแแแแ แแแแก แแแแแงแแแแแ.
แขแแแแฃแ แ แแแขแแ แแแแชแแแก แกแชแแแแ แแแ Keycloak-แจแ OAuth2-แแก แแแแแงแแแแแแ
แแแขแแ แแแแชแแแก แแแแแก แแแแแแ - แแแแแแงแแแแแ แกแแ แแแ แแก แแฎแแ แแก แแแแแแแชแแแแแแ. แแแขแแ แแแแชแแแก แแแแแ แแแแก แแ แ-แแ แแ แงแแแแแแ แแแแ แชแแแแแฃแแ แขแแแ, แ แแแแแ แแก แแแ แแแ แจแแแคแแ แแแ แกแแ แแแ แแก แแแแแแแชแแแแก, แกแแแแช แแแแแแแชแแแก แฌแงแแ แแก แแแแ แแ แแแแแแขแแก แแแแแชแแแแแ แแแฃแฌแแแแแแแแ แแฃแขแกแแแแแ แแแแกแแแแก. แแ แแชแแกแ แแ แจแแแแฎแแแแแจแ แแคแฃแซแแแแ แแแแแแแกแแแแ แแแแแก. แแแแแแแชแแแก แฃแแแ แจแแแซแแแก แแแแฎแแแ แแแแแก แแแแแขแแแ (แแแแฎแแแ แแแแแก แแแแแขแแแ) แฃแ แแแแ แแแแ, แ แแแแ แแชแแ แแแ แแ แแฃแแแ แ - แแแแฆแแก แแแแฎแแแ แแแแแก แแแแแขแแก แแแจแแแแแแ แแแแแแแกแแแแ แแแแฃแแ API แแแขแแ แแแแชแแแก แแแแแแ.
แแแแแแชแแขแฃแ แ แแแแแแ - แแแแแแงแแแแแ แแแแแแฃแ แ แแ แแแ แแแแแแแชแแแแแก แแแแ (แแแแแแแชแแแแ, แ แแแแแแแช แแฃแจแแแแก แแแแฎแแแ แแแแแก แแแฌแงแแแแแแแแแ).
แแแแแแชแแขแฃแ แ แแแขแแ แแแแชแแแก แแแแแ แแแแก แขแแแ แแแแแแงแแแแแ แแแแแแฃแ แ แแ แแแ แแแแแแแชแแแแแก แแแแ , แกแแแแช แแแแแแขแแก แแแแคแแแแแชแแแแฃแ แแแแก แแแ แแแขแแ แจแแฃแซแแแแแแแ. แแแแแแชแแขแฃแ แ แแแแแ แแแแก แขแแแ แแกแแแ แแงแแแแแก แแแแฎแแแ แแแแแก แแแแแขแแก แแแแแแแกแแแแ แแแแแก, แ แแแแแก แแ แแกแแช แฌแแแแแแก แแแขแแแ แแแแแแชแแแ แแแแฎแแแ แแแแแก แแแแแขแก แแแแแแแชแแแจแ แจแแแแแแแ แแแแแงแแแแแแกแแแแก. แแก แฎแแแก แแแขแแแก แฎแแแแแกแแฌแแแแแ แแแแฎแแแ แแแแแกแแแแก แแ แแแแฎแแแ แแแแแก แแแฌแงแแแแแแแแก แกแฎแแ แแแแแแแชแแแแแกแแแแก. แแ แขแแแแก แแแขแแ แแแแชแแแก แแแแแ แแแ แแ แแแแกแขแฃแ แแแก แแแแแแแชแแแก แแแแแขแฃแ แแแแก แแ แแแแแ แแ แแชแแกแ แแงแ แแแแแ แแแแแแแกแแแแ แแแแแก URL-แก (แแแ แ แแแ แแแแกแขแ แแ แแแฃแ แกแแ แแแกแจแ).
Implicit Flow แแ แฃแญแแ แก แแฎแแ แก แฌแแแแแแก แกแแแแแแแก แแแแแฎแแแแแก แขแแแแแแแก.
แแแแแแขแแก แกแแ แแแคแแแแขแแแแก แกแแแ แแแขแ แแแแแแ โ แแแแแแงแแแแแ, แ แแแแกแแช แแแแแแแชแแ แฌแแแแแ API-แก. แแ แขแแแแก แแแขแแ แแแแชแแแก แแแแแ แแแ, แ แแแแ แช แฌแแกแ, แแแแแแงแแแแแ แกแแ แแแ -แกแแ แแแ แแก แฃแ แแแแ แแฅแแแแแแแกแแแแก, แ แแแแแแช แฃแแแ แแแแฎแแ แชแแแแแแก แคแแแแ, แแแแฎแแแ แแแแแก แฃแจแฃแแแ แฃแ แแแแ แแฅแแแแแแแก แแแ แแจแ. แแแแแแขแแก แ แฌแแฃแแแแแแ แกแแแแแแแแก แกแแแ แแแขแ แแแแแแ แกแแจแฃแแแแแแก แแซแแแแก แแแ แกแแ แแแกแก (แแแแคแแแแแชแแแแฃแ แแแแแแขแก) แแแแแแงแแแแก แกแแแฃแแแ แ แ แฌแแฃแแแแแแ แกแแแแแแแ, แแแชแแแแ แแแแกแ, แ แแ แกแฎแแ แแแ แกแแ แแแกแแ แแแ แแแแแกแแก แแแแแแขแแคแแแแชแแ แแแแฎแแแแแก แแแแฎแแแ แแแแแกแแแแก. แฃแกแแคแ แแฎแแแแแก แฃแคแ แ แแแฆแแแ แแแแแกแแแแก, แแแ แแก แกแแ แแแกแแ แจแแแซแแแแ แแแแแแงแแแแก แกแแ แขแแคแแแแขแ (แกแแแ แแ แกแแแแฃแแแแก แแแชแแแแ) แ แฌแแฃแแแแแแ แกแแแแแแ.
OAuth2 แกแแแชแแคแแแแชแแ แแฆแฌแแ แแแแ
JWT แแแจแแแ แแ แแแกแ แกแแ แแแแแแ
JWT (JSON Web Token) แแ แแก แฆแแ แกแขแแแแแ แขแ (
แกแขแแแแแ แขแแก แแแฎแแแแแ, แแแขแแแ แจแแแแแแ แกแแแ แแแฌแแแแกแแแ base-64 แคแแ แแแขแจแ, แแแแแงแแคแแแ แฌแแ แขแแแแแแ. แแแ แแแ แแแฌแแแก แแฌแแแแแ แกแแแแฃแ แ, แ แแแแแแช แจแแแชแแแก แแแขแแแแก แขแแแก แแ แชแแคแ แฃแแ แฎแแแแแฌแแ แแก แแแกแแฆแแแแ แฐแแจแแก แแแแแ แแแแแก แกแแฎแแแก. แแแแ แ แแแฌแแแ แแแแฎแแแก แซแแ แแแแ แแแคแแ แแแชแแแก (แแแแฎแแแ แแแแแ, แแขแ แแแฃแขแแแ แแ แ.แจ.). แแแกแแแ แแแฌแแแ แแ แแก แชแแคแ แฃแแ แฎแแแแแฌแแ แ.
. .
แแ แแกแแแแก แจแแแแแฎแแ แแแขแแแ แแฅแแแแก DB-แจแ. แแแแก แแแแ, แ แแ แแแฅแแแแ แแแขแแแ แแแ แแแแก แแฅแแแแแแแแขแฃแ แแ, แแแขแแแแก แจแแแแฎแแ แแแ แแแแก แฌแแแแแ แขแแฅแกแขแจแ แจแแแแฎแแแก แฐแแแแก.
แฌแแแแแแก แแแขแแแ แแ แแก แแแจแแแ, แ แแแแแแช แแซแแแแก แแแก แแคแแแแแแก แฌแแแแแแก แฃแกแแคแ แแฎแ แกแแ แแแ แแก แ แแกแฃแ แกแแแแ. แแแก แฉแแแฃแแแแ แแ แแฅแแก แฎแแแแแแแ แแแแ แแ แจแแแซแแแแ แจแแแชแแแแแก แแแแแขแแแแ แแแคแแ แแแชแแแก, แ แแแแ แแชแแ แแ แแฎแแ แแก IP แแแกแแแแ แแ, แ แแแแแแช แแแฎแแแก แขแแแแแก.
แแแแแแฎแแแ แแแขแแแ แแ แแก แแแขแแแ, แ แแแแแแช แกแแจแฃแแแแแแก แแซแแแแก แแแแแแขแแแก แแแแแฎแแแแ แแฎแแแ แฌแแแแแแก แแแจแแแแ แแแแ แกแแชแแชแฎแแแก แแแแแก แแแแฌแฃแ แแแก แจแแแแแ. แแก แแแขแแแแแ แฉแแแฃแแแแ แแ แแแแชแแแ แแแแ แฎแแแก แแแแแแแแแแแจแ.
แแแแ แแกแแ แแแกแแก แแ แฅแแขแแฅแขแฃแ แแจแ แแแแแงแแแแแแก แซแแ แแแแแ แฃแแแ แแขแแกแแแแแ:
- แกแฎแแแแแกแฎแแ แแแแแแแชแแแแกแ แแ แกแแ แแแกแแแแ แฌแแแแแแก แจแแกแแซแแแแแแแ แแ แแฏแแ แแแ แแแแแแขแแคแแแแชแแแก แกแแจแฃแแแแแแ.
- แแแแฎแแแ แแแแแก แแ แแคแแแจแ แ แแแ แกแแญแแ แ แแขแ แแแฃแขแแแแก แแ แแ แกแแแแแแก แจแแแแฎแแแแแจแ, แจแแกแแซแแแแแแแ แแแแแแแ แแแก แแแแแชแแแแแแ, แ แแแแแแแช แจแแแซแแแแ แแแแแแขแแก แแแขแแแ แแแแก, แแแ แจแแ แแก แแแขแแแแขแแแแแฃแ แแ แคแ แแแแแ.
- แแ แแ แแก แกแแญแแ แ แแแคแแ แแแชแแแก แจแแแแฎแแ แแฅแขแแฃแ แ แกแแกแแแแแก แจแแกแแฎแแ, แกแแ แแแ แแก แแแแแแแชแแแก แแฎแแแแ แฎแแแแแฌแแ แแก แแแแแแแฌแแแแ แกแญแแ แแแแ.
- แฃแคแ แ แแแฅแแแแ แฌแแแแแแก แแแแขแ แแแ แแแขแแแ แแแแก แแแแแขแแแแแ แแขแ แแแฃแขแแแแก แแแจแแแแแแ.
- แกแแแแฃแ แแกแแแแก แแ แแแขแแแ แแแแกแแแแก แกแแแแแแฃแ แ แฎแแแแแฌแแ แแก แแแแแงแแแแแ แแ แแแก แแแแแแแ แแแแแฌแงแแแขแแก แฃแกแแคแ แแฎแแแแแก.
JWT แแแขแแแ - แจแแแแแแแแแแแ
แกแแแแฃแ แ - แแแแฃแแแกแฎแแแแแ, แกแแแแฃแ แ แจแแแชแแแก แแฎแแแแ แแแจแแแก แขแแแก แแ แแแจแแคแแ แแกแแแแก แแแแแงแแแแแฃแ แแแแแ แแแแก.
แแแขแแแแก แขแแแ แแแแฎแแแ "typ" แแแแแแจแจแ. "แขแแแแก" แแแกแแฆแแแ แแแแแ แแ แแแฃแแแ JWT-แจแ. แแฃ แแ แกแแแแแก "typ" แแแกแแฆแแแ, แแแกแ แแแแจแแแแแแแ แฃแแแ แแงแแก JWT, แ แแแ แแแฃแแแแแแแแก, แ แแ แแก แแแแแฅแขแ แแ แแก JSON Web Token.
แแแแ แ แแแกแแฆแแแ "alg" แแแแกแแแฆแแ แแแก แแแแแ แแแแก, แ แแแแแแช แแแแแแงแแแแแ แขแแแแแแก แแแจแแคแแ แแกแแแแก. แแแแฃแแแกแฎแแแแแ แฃแแแ แแแงแแแแแก HS256. แกแแแแฃแ แ แแแจแแคแ แฃแแแ base64-แจแ.
{ "alg": "HS256", "type": "JWT"}
แแแขแแแ แแแ (แจแแแแแ แกแ) - แแแขแแแ แแแ แแแแฎแแแก แแแแแกแแแแ แแแคแแ แแแชแแแก, แ แแแแแแช แกแแญแแ แแแแก แจแแแแฌแแแแแก. แขแแแ แแแก แแแแแแฃแแ แแแกแแฆแแแ แชแแแแแแแ แ แแแแ แช "แแ แแขแแแแแ". แแแแแแแแแ, แแแแแแแชแแแจแ แจแแกแแแ แจแแแแซแแแแ แแฎแแแแ แแแฌแแแแแ (แแแฎแฃแ แฃแแ แแ แแแ). แ แแแแกแแช แแแแแแ แแแแแแก แแแฌแแแแ แแแแแฌแแแแแแแก แแแกแแฆแแแแ, แฉแแแ แแฃแแแแแแแ แแแก แแแกแแฌแแแแแก แฌแแ แแแก. แแแแจแแแแแแแแแแ แจแแแแแฌแแแ, แ แแ แแ.แคแแกแขแแก แแแกแแแแ แแ แแแฃแแแแแก แแ แแแ แก, แแแแช แแฆแแแก แแแฌแแแแแก, แแแแขแแ แฉแแแ แแ แแแกแแแแ แแก แฉแแแ แแแแ แแแขแแแ แแแแจแ, แแแแกแแแแแก แแแก แแแแแฎแแแ "แแ.แคแแกแขแแก" แแแกแแฆแแแจแ.
{ "email": "[แแ.แคแแกแขแแ แแแชแฃแแแ]"}
แแแกแแฆแแแแแ แแแขแแแ แแแแจแ แจแแแซแแแแ แแงแแก แแแแแแแแฃแ แ. แแฃแแชแ, แแ แกแแแแแก แ แแแแแแแแ แแแชแฃแแ:
- iss (Issuer) - แแแแกแแแฆแแ แแแก แแแแแแแชแแแก, แกแแแแแแแช แแแแแแแแแ แแแขแแแ.
- sub (Subject) - แแแแกแแแฆแแ แแแก แแแจแแแก แกแแแแแก.
- aud (แแฃแแแขแแ แแ) แแ แแก แแกแแแแแก แแแแแ แ แแแ แซแแแแแแ แ แกแขแ แแฅแแแแแแก แแ URI-แแแแก แแแกแแแ, แ แแแแแแช แฌแแ แแแแแแแแก แแ แแแจแแแก แแแแฆแแแแ แกแแแก. แ แแแแกแแช แแแแฆแแแ แแฎแแ แ แแฆแแแก JWT-แก แแแชแแแฃแแ แแแกแแฆแแแแ, แแแ แฃแแแ แจแแแแแฌแแแก แกแแแฃแแแ แ แแแแแก แแ แกแแแแแ แแแแฆแแแแแจแ - แฌแแแแแฆแแแแ แจแแแแฎแแแแแจแ แแแแแ แแ แแแ แแแฃแแแแแ แแแขแแแก.
- exp (Expiration Time) - แแแฃแแแแแแก, แ แแแแก แแฌแฃแ แแแ แแแขแแแ. JWT แกแขแแแแแ แขแ แแแแแฎแแแก แแแก แงแแแแ แแแแแแแแแขแแชแแแก, แ แแ แฃแแ แงแแก แแแแแแแกแฃแแ แขแแแแแแแ. exp แแแกแแฆแแแ แฃแแแ แแงแแก unix แคแแ แแแขแจแ แแ แแแก แแแแแแญแแ.
- nbf (Not Before) แแ แแก แแ แ unix แคแแ แแแขแจแ, แ แแแแแแช แแแแกแแแฆแแ แแแก แแแแแแขแก, แ แแแแกแแช แแแขแแแ แแแฎแแแแ แแแฅแแแแ.
- iat (Issued At) - แแก แแแกแแฆแแแ แฌแแ แแแแแแแแก แแแขแแแแก แแแชแแแแก แแ แแก แแ แแแกแ แแแแแงแแแแแ แจแแกแแซแแแแแแแ JWT-แแก แแกแแแแก แแแกแแแแแแแ. iat แแแกแแฆแแแ แฃแแแ แแงแแก unix แคแแ แแแขแจแ แแ แแแก แแแแแแญแแ.
- Jti (JWT ID) โ แกแขแ แแฅแแแ, แ แแแแแแช แแแแกแแแฆแแ แแแก แแ แแแจแแแก แฃแแแแแแฃแ แแแแแขแแคแแแแขแแ แก, แ แแแแกแขแ แแกแแแแ แแแ แซแแแแแแ แ.
แแแแจแแแแแแแแแแ แแแแกแแแแแก, แ แแ แแแขแแแ แแแ แแ แแ แแก แแแแแชแแแฃแแ แแแจแแคแ แฃแแ แคแแ แแแ (แแฃแแชแ แแแขแแแแแ แจแแแซแแแแ แแงแแก แแฃแแแ แแแฃแแ แแ แจแแแแแ แจแแกแแซแแแแแแแ แแแจแแคแ แฃแแ แแแแแชแแแแแแก แแแแแชแแแ). แแแแขแแ แแแก แแ แจแแฃแซแแแ แ แแแแ แกแแแแฃแแแ แแแคแแ แแแชแแแก แจแแแแฎแแ. แกแแแแฃแ แแก แแกแแแแกแแ, payload แแ แแก base64 แแแแแ แแแฃแแ.
แฎแแแแแฌแแ แ - แ แแชแ แแแแฅแแก แกแแแแฃแ แ แแ แแแขแแแ แแแ, แจแแแแแซแแแ แแแแแแแแแแแ แฎแแแแแฌแแ แ.
Base64-แจแ แแแแแ แแแฃแแ: แกแแแแฃแ แ แแ แแแขแแแ แแแ แแฆแแแฃแแแ, แแกแแแ แแแแ แแแแแแแฃแแแ แกแขแ แแฅแแแจแ แฌแแ แขแแแแก แแแจแแแแแแ. แจแแแแแ แแก แกแขแ แแฅแแแ แแ แกแแแแฃแแแ แแแกแแฆแแแ แจแแงแแแแแแแ แกแแแแฃแ แจแ แแแแแแแแฃแ แแแจแแคแแ แแก แแแแแ แแแแจแ ("alg" แแแกแแฆแแแ). แแแกแแฆแแแ แจแแแซแแแแ แแงแแก แแแแแกแแแแ แ แกแขแ แแฅแแแ. แฃแคแ แ แแ แซแแแ แกแแแแแ แแฅแแแแ แงแแแแแแ แกแแกแฃแ แแแแ, แ แแแแแ แแแก แแฆแแแแก แฃแคแ แ แแแขแ แแ แ แแแกแญแแ แแแแ.
{"alg":"RSA1_5", "payload":"A128CBC-HS256"}
Keycloak Failover Cluster Architecture-แแก แแแแแ
แงแแแแ แแ แแแฅแขแแกแแแแก แแ แแ แแแแกแขแแ แแก แแแแแงแแแแแแกแแก, แแแ แแแแ แแแแฎแแแแแแ SSO แแแแแฌแงแแแขแแกแแแแก. แ แแแแกแแช แแ แแแฅแขแแแแก แ แแแแแแแแ แแชแแ แแ, แแก แแแแฎแแแแแแ แแ แช แแกแ แจแแกแแแฉแแแแแ แงแแแแ แแ แแแฅแขแแกแแแแก, แแฃแแชแ แแแแฎแแแ แแแแแแ แ แแแแแแแแแกแ แแ แแแขแแแ แแชแแแก แแแขแแแแกแแแ แแ แแแ แแแ แแแแ แฎแแแแแกแแฌแแแแแแแแกแ แแ แจแแกแ แฃแแแแแก แแแแฎแแแแแแ.
แแ แแฏแแ แแแ SSO แแแ แชแฎแแก แ แแกแแแก แแแแ แแ แแ แแแก แแแแฎแแแแแแก แแแแแฌแงแแแขแแก แแ แฅแแขแแฅแขแฃแ แแกแ แแ แแแแแแข แแแแแแแแแขแแแแกแแแแก แแแแแงแแแแแฃแ แแแแแแแแแ แแ แแฌแแแแก แซแแแแแ แแญแแแ แ SLA-แก. แแ แแฎแ แแ, แฃแคแ แ แฎแจแแ แแ, แแแแแฌแงแแแขแแแแแแแแก แจแแแฃแจแแแแแแก แแ แแแแแ แแแแก แแแ แแฃแ แแขแแแแแแ, แแ แแแฅแขแแแก แแฅแแ แกแแแฃแแแ แ แแ แแแแแแแแแแฃแแ แแแคแ แแกแขแ แฃแฅแขแฃแ แ. แ แแแแ แช แแแแแแแแ แแแ แแ แแแ แแกแแ แแแก, แกแแญแแ แแ แแแแแแแแ แแแแกแ แแ แแแกแจแขแแแแแแก แจแแกแแซแแแแแแแแแแก แแแแแแแ. แงแแแแแแ แแแฅแแแแแ แคแแแแแแ แแก แแแแกแขแแ แแก แจแแฅแแแ แแแแขแแแแแ แแก แแแ แขแฃแแแแแแชแแแก แแ แฐแแแ แแแฃแแ แแแแแแแแก แแแแแงแแแแแแ.
แแฅแขแแฃแ แ/แแฅแขแแฃแ แ แแ แแฅแขแแฃแ แ/แแแกแแฃแ แ แแแแกแขแแ แแก แ แแแแแจแ แแฃแจแแแแแกแแแแก แกแแญแแ แแ แแแแแชแแแแ แแแแแแแแแแ แฃแแแแแก แฃแแ แฃแแแแแงแแคแ แ แแแแชแแฃแ แแแแแชแแแแ แแแแแจแ - แแแแแชแแแแ แแแแแก แแ แแแ แแแแแซแ แกแแแฅแ แแแฃแแแ แฃแแแ แแแแแแแ แแแก แกแฎแแแแแกแฎแแ แแแ-แแแแแฌแแแแแฃแ แแแแแชแแแแ แชแแแขแ แแแก แจแแ แแก.
แจแแชแแแแแกแแแแ แขแแแแ แแแขแฃแแ แแแกแขแแแแชแแแก แฃแแแ แขแแแแกแ แแแแแแแแ.
แ แ แกแแ แแแแแแแ แแแแฅแแก แแ แแ แแแแกแขแแ แแก แแแแแงแแแแแแก:
- แแแฆแแแ แฎแแแแแกแแฌแแแแแแแ แแ แจแแกแ แฃแแแแ.
- แแแแ แแชแแฃแแ แ แแแแแแแแก แแฎแแ แแแญแแ แ: แแฅแขแแฃแ แ / แแฅแขแแฃแ แ, แแฅแขแแฃแ แ / แแแกแแฃแ แ.
- แแแแแแแฃแ แ แแแกแจแขแแแแก แฃแแแ แ - แแแแขแแแแแ แแก แแแ แขแฃแแแแแแชแแแก แแแแแงแแแแแแกแแก.
- แชแแแขแ แแแแแแแฃแแ แแแ แแแแกแ แแ แแแแแขแแ แแแแแก แจแแกแแซแแแแแแแ.
- แแ แแแฅแขแแแจแ แแแแฎแแแ แแแแแแแก แแแแแขแแคแแแแชแแแก/แแแแแแขแแคแแแแชแแแก/แแแขแแ แแแแชแแแก แแ แแแแแ แแแแแแแ.
- แฃแคแ แ แแแแญแแแ แแแแ แฃแ แแแแ แแฅแแแแแแ แกแฎแแแแแกแฎแแ แแ แแแฅแขแแแก แจแแ แแก แแแแฎแแแ แแแแแก แฉแแ แแฃแแแแแก แแแ แแจแ.
- JWT แขแแแแแแก แฎแแแแฎแแ แแแแแงแแแแแแก แจแแกแแซแแแแแแแ แกแฎแแแแแกแฎแแ แแ แแแฅแขแแแจแ.
- แแแแแแก แแ แแ แฌแแ แขแแแ.
- แแแแ แแกแแ แแแกแแแแก/แแแแขแแแแแ แแแแก แแแ แขแฃแแแแแแชแแแก แแแแแงแแแแแแ แแ แแแฅแขแแแแก แฃแคแ แ แกแฌแ แแคแ แแแจแแแแ (แแ แแ แแก แกแแญแแ แ แแแแแขแแแแแ แแแแแแแแแขแแแแก แแฌแแแ แแ แแแแคแแแฃแ แแชแแ).
- แจแแกแแซแแแแแแแ แแแแแ แชแแฃแแ แแฎแแ แแแญแแ แแก แจแแซแแแ แแแแงแแแแแแแกแแแ.
แ แ แฃแแแ แแแซแแแแ แแแแกแขแแ แแก แแแแแแแแแกแแก
DBMS
Keycloak แแงแแแแแก แแแแแชแแแแ แแแแแก แแแ แแแแก แกแแกแขแแแแก แจแแกแแแแฎแแ: แกแคแแ แแแแ, แแแแแแขแแแ, แแแแฎแแแ แแแแแแ แแ แ.แจ.
แแฎแแ แแแญแแ แแแแ DBMS-แแก แคแแ แแ แกแแแฅแขแ แ: MS SQL, Oracle, MySQL, PostgreSQL. Keycloak-แก แแแแฉแแแ แกแแแฃแแแ แ แฉแแจแแแแแฃแแ แ แแแแชแแฃแ แ แแแแแชแแแแ แแแแ. แ แแแแแแแแแ แแแฃแแแ แแแแแแงแแแแ แแ แแแแขแแแ แแฃแแ แแแ แแแแกแแแแก - แ แแแแ แแชแแ แแแแแแแแ แแแแก แแแ แแแ.
แแฅแขแแฃแ แ/แแฅแขแแฃแ แ แแ แแฅแขแแฃแ แ/แแแกแแฃแ แ แแแแกแขแแ แแก แ แแแแแแแจแ แแฃแจแแแแแกแแแแก แกแแญแแ แแ แแแแแชแแแแ แแแแแแแแแแ แฃแแแแแก แฃแแ แฃแแแแแงแแคแ แ แแแแชแแฃแ แแแแแชแแแแ แแแแแจแ แแ แแ แแแ แแแแแชแแแแ แแแแแก แแแแกแขแแ แฃแแ แแแแแซแ แกแแแฅแ แแแฃแแแ แแแแแ แแแก แแแแแชแแแแ แชแแแขแ แแแก แจแแ แแก.
แแแแแฌแแแแแฃแแ แฅแแจแ (Infinspan)
แแแแกแแแแแก, แ แแ แแแแกแขแแ แแ แกแฌแแ แแ แแแฃแจแแแก, แกแแญแแ แแ แจแแแแแแ แขแแแแก แฅแแจแแก แแแแแขแแแแแ แกแแแฅแ แแแแแแชแแ JBoss Data Grid-แแก แแแแแงแแแแแแ:
แแแแแแขแแคแแแแชแแแก แกแแกแแแแ - แแแแแแงแแแแแ แแแแแชแแแแแแก แจแแกแแแแฎแแ แแแแแ แแขแฃแแ แแแแฎแแแ แแแแแก แแแแแแขแแคแแแแชแแแกแแก. แแแแฎแแแแแแ แแ แฅแแจแแแแ, แ แแแแ แช แฌแแกแ, แแแแชแแแก แแฎแแแแ แแ แแฃแแแ แก แแ Keycloak แกแแ แแแ แก แแ แแ แ แแแแแแแชแแแก.
แแแฅแแแแแแแก แแแจแแแแ แแแแแแงแแแแแ แกแชแแแแ แแแแกแแแแก, แ แแแแกแแช แแแแฎแแแ แแแแแแ แฃแแแ แแแแแแกแขแฃแ แแก แแแฅแแแแแแ แแกแแแฅแ แแแฃแแแ (แแแคแแกแขแแก แกแแจแฃแแแแแแ). แแแแแแแแแ, แแแ แแแแก แแแแแฌแงแแแแก แแ แแก, actionTokens Infinispan แฅแแจแ แแแแแแงแแแแแ, แ แแแ แแแแแงแฃแ แ แแแแแแแ แแแขแแแแแแชแแแแแก แแกแแชแแ แแแฃแแ แฅแแแแแแแก แแแขแแแแแแก แจแแกแแฎแแ, แ แแแแแแแช แฃแแแ แแแแแแงแแแแแ, แแแแขแแ แแแกแ แฎแแแแฎแแ แแแแแงแแแแแ แจแแฃแซแแแแแแแ.
แแฃแแแแแ แแแแแชแแแแแแก แฅแแจแแ แแแ แแ แแแฃแฅแแแแ - แแแแแแงแแแแแ แแฃแแแแแ แแแแแชแแแแแแก แฅแแจแแ แแแแกแแแแก, แ แแแ แแแแแแแ แแฅแแแก แแชแแแแแฃแแ แแ แแกแแญแแ แ แแแแฎแแแแแแ แแแแแชแแแแ แแแแแจแ. แ แแแแกแแช แแแแแกแแแแ แ Keycloak แกแแ แแแ แ แแแฎแแแแก แแแแแชแแแแแก, แงแแแแ แกแฎแแ Keycloak แกแแ แแแ แแ แงแแแแ แแแแแชแแแแ แชแแแขแ แจแ แฃแแแ แแชแแแแก แแแแก แจแแกแแฎแแ.
แกแแแฃแจแแ - แแแแแแงแแแแแ แแฎแแแแ แแ แแกแฌแแ แ แจแแขแงแแแแแแแแแแก แแแกแแแแแแแแ แแแแกแขแแ แฃแ แแแแแซแแแกแ แแ แแแแแชแแแแ แชแแแขแ แแแก แจแแ แแก.
แแแแฎแแแ แแแแแก แกแแกแแแแ - แแแแแแงแแแแแ แแแแฎแแแ แแแแแก แกแแกแแแแแก แจแแกแแฎแแ แแแแแชแแแแแแก แจแแกแแแแฎแแ, แ แแแแแแแช แแแฅแแแแแแก แแแแฎแแแ แแแแแก แแ แแฃแแแ แแก แกแแกแแแก แฎแแแแ แซแแแแแแแก แแแแแแแแแแแจแ. แฅแแจแแ แฃแแแ แแแแแฃแจแแแก HTTP แแแแฎแแแแแแ แกแแแแแแ แแแแฎแแแ แแแแแกแแแ แแ แแแแแแแชแแแแแ.
แฃแฎแแจแ แซแแแแก แแแชแแ - แแแแแแงแแแแแ แฌแแ แฃแแแขแแแแแ แจแแกแแแแก แจแแกแแฎแแ แแแแแชแแแแแแก แแแแแงแฃแ แแก แแแแแแแแกแแแแก.
แฒแแขแแแ แแแแก แแแแแแแแกแแแ
แแแขแแแ แแแแก แแแแแแกแแ แ แแ แแก แแ แแฏแแ แแแ แจแแกแแกแแแแแ แฌแแ แขแแแ keycloak-แจแ แแ แฃแแแ แฃแแ แฃแแแแแงแแก แฌแแแแแแแ แกแแกแแแแ.
แแแแแแแชแแแก แกแแ แแแ แแแ
แแกแแแ แแแแแแงแแแแแ แแแแแแแแแขแแแแก แแ แแแแแแแแแ แฃแ แแแแ แแฅแแแแแแแก แแแกแแแแแขแ แแแแแแแ แแ แแแแ แแแ แขแฃแแแแแแชแแ แแ แแแแขแแแแแ แแแแชแแ แจแแกแแซแแแแแแแ แแ แกแแแฃแแ แแแขแแแแขแแแแชแแแก แฎแแแกแแฌแงแแแแแก แแ แแแคแ แแกแขแ แฃแฅแขแฃแ แแก แแแขแแแแขแแแแชแแแก แฎแแแกแแฌแงแแแแแก แแแแแแแฃแ แ แแแกแจแขแแแแ แแแแก แแแแแงแแแแแแ. แแแแแแแแแแก แงแแแแแแ แแแแ แชแแแแแฃแแ แกแชแแแแ แแแ OpenShift-แจแ, Kubernates-แจแ, Rancher-แจแ.
แแแแ แแแแแ แแแแ แแแ แแแแ แแแฌแแแ - แแแแ แแฃแแ. แกแขแแขแแแแแก แจแแแแแ แกแแ แแแจแ แแแแแฎแแแแแ แกแฎแแแแแกแฎแแ แแแ แแแแแแก แแ แแแแแแแ แแแแแ แแแขแแแ แแชแแแก แแแแแแแแแแ แแ แแแ แแแแขแ แแแแก แแแแแแแแแแ.
แฌแงแแ แ: www.habr.com