Keycloak

什么是 Keycloak?

Keycloak 是开源的身份和访问管理软件。它让许多应用共用同一个带多因素身份验证的登录,并被广泛用于为定制应用添加基于标准的登录。

与工程师沟通 知识库
示意图:一个账户登录身份提供商,再由它打开电子邮件、业务应用和内部工具

它是什么

Keycloak 起源于 Red Hat,现在是云原生计算基金会(CNCF)的项目。它运行在您自己的服务器上,以容器形式或在 Kubernetes 上运行,并支持 OpenID Connect、OAuth 2.0 和 SAML。使用这些标准的应用把登录交给 Keycloak,并收回经过确认的身份,因此它自己永远不用处理密码。

单点登录为什么重要

有了单点登录,每个人对所有已连接的应用只用一个账户。有人离职时,停用这个账户就能在所有地方取消其访问权限。多因素登录在一处统一要求,员工需要重复使用或写下来的密码也更少。

主要组成部分

  • Realm:realm 是一组独立的用户、设置和应用。一次安装可以包含多个,例如一个用于员工,一个用于客户。
  • Client:每个通过 Keycloak 登录用户的应用都登记为一个 client,并有自己的设置。
  • 身份代理:Keycloak 可以把登录交给另一个提供商并信任其结果,因此员工可以用自己的 Microsoft 365 账户登录。
  • 用户联合:Keycloak 可以从现有的 LDAP 目录或 Microsoft Active Directory 读取用户,而无需再保存每个账户的第二份副本。

Keycloak 与 Authentik

Authentik 覆盖相同的领域。Keycloak 是较早的项目,也是开发人员需要在自己软件内部集成登录时的常规选择。Authentik 更注重在其网页界面中设计登录步骤,并提供代理前哨(proxy outposts),在没有登录功能的应用前面加上登录。Keycloak 也能保护这些应用,通常需要在它们前面另加一个代理。

KawaConnect 如何使用单点登录

我们开发定制业务软件,而登录正是应用中应当遵循公开标准、而不是从头编写的部分。我们在 Microsoft 365 方面的身份工作涵盖 Entra ID 账户、多因素身份验证和条件访问。我们还运行自托管的 Linux、Docker 和 Kubernetes 服务,在这些环境中,身份提供商可以让内部工具使用与其他所有系统相同的 Microsoft 账户。

相关服务

Kubernetes 咨询

用于自托管服务及其配置的集群。

Microsoft 365

为员工账户提供 Entra ID、MFA 和条件访问。

网络安全

远程访问、MFA 和分段,并有专人监看。

了解更多

要为自己的软件添加登录?

告诉我们这个应用做什么,以及谁会登录它。我们会概述基于标准的登录将如何适配。

开始沟通