keycloak:OAuth2、OIDC 的开源身份提供商(idP)
单点登录
用户通过Keycloak进行身份验证,而非针对各个单独的应用程序。这意味着您的应用程序无需处理登录表单、验证用户身份以及存储用户信息。一旦用户在Keycloak登录,访问其他不同应用程序时无需再次登录。
这同样适用于注销操作。Keycloak提供单点注销功能,即用户只需注销一次,就会从所有使用Keycloak的应用程序中退出登录。
身份代理与社交登录
通过管理控制台,很容易添加社交网络登录功能。只需选择您想要添加的社交网络即可,无需对应用程序进行任何代码编写或更改。
Keycloak还可以使用现有的OpenID Connect或SAML 2.0身份提供商对用户进行身份验证。同样,这只需通过管理控制台配置身份提供商即可。
用户联合
Keycloak内置了连接现有LDAP或Active Directory服务器的支持。如果您的用户存储在其他地方,比如关系型数据库,您也可以实现自己的用户提供程序。
管理控制台
管理员可以通过管理控制台集中管理Keycloak服务器的各个方面。
他们可以启用和禁用各种功能。可以配置身份代理和用户联合。
他们能够创建和管理应用程序及服务,并定义细粒度的授权策略。
他们还可以管理用户,包括权限和会话。
账户管理控制台
用户可以通过账户管理控制台管理自己的账户。他们可以更新个人资料、更改密码并设置双因素身份验证。
用户还可以管理会话以及查看账户历史记录。
如果您启用了社交登录或身份代理,用户还可以将他们的账户与其他提供商关联,以便使用不同的身份提供商对同一账户进行身份验证。
标准协议
Keycloak基于标准协议,并提供对OpenID Connect、OAuth 2.0和SAML的支持。
授权服务
如果基于角色的授权无法满足您的需求,Keycloak还提供细粒度的授权服务。这使您能够从Keycloak管理控制台管理所有服务的权限,并赋予您定义所需精确策略的能力。
https://github.com/keycloak/keycloak
https://www.keycloak.org/