第 1 章 红帽构建的 Keycloak 功能和概念
红帽构建的 Keycloak 是 Web 应用和 RESTful Web 服务的单点登录解决方案。红帽构建的 Keycloak 的目标是使安全简单,以便应用程序开发人员易于保护他们机构中部署的应用程序和服务。开发人员通常必须编写的安全功能开箱即用,并可方便地根据您的组织的需求进行定制。红帽构建的 Keycloak 为登录、注册、管理和帐户管理提供了可自定义的用户界面。您还可以使用红帽构建的 Keycloak 作为集成平台,将其插入到现有的 LDAP 和 Active Directory 服务器中。您还可以将身份验证委托给第三方身份提供程序,如 Ice 和 Google。
1.1. 功能
红帽构建的 Keycloak 提供以下功能:
- 浏览器应用程序的 Single-Sign On 和 Single-Sign Out。
- OpenID Connect 支持。
- OAuth 2.0 支持。
- SAML 支持。
- Identity Brokering - 带有外部 OpenID Connect 或 SAML 身份提供程序的身份验证。
- 社交登录 - 使用 Google、GitHub、Facet、Facet 和其它社交网络启用登录。
- 用户联邦 - 从 LDAP 和 Active Directory 服务器同步用户。
- Kerberos 网桥 - 自动验证登录到 Kerberos 服务器的用户。
- Admin Console,用于集中管理用户、角色、角色映射、客户端和配置。
- 允许用户集中管理其帐户的帐户管理控制台。
- 主题支持 - 自定义面向所有用户的页面,以与您的应用程序和品牌集成。
- 双因素身份验证 - 通过 Google Authenticator 或 FreeOTP 支持 TOTP/HOTP。
- 登录流程 - 可选的用户自助注册、恢复密码、验证电子邮件、需要密码更新等。
- 会话管理 - 管理员和用户本身可以查看和管理用户会话。
- 令牌映射器 - 映射用户属性、角色等。如何放入令牌和声明中。
- not-在每个域、应用程序和用户撤销策略之前。
- CORS 支持 - 客户端适配器对 CORS 有内置支持。
- JavaScript 应用程序、JBoss EAP 等的客户端适配器。
- 支持任何具有 OpenID Connect Relying Party 库或 SAML 2.0 服务提供商库的平台/语言。