Keycloak Realm VS Keycloak客户端

时间:2019-06-12 11:49:04

标签: devops keycloak

我最近正在研究用于SSO的Keycloak 6.0.1,以便对组织中的多个应用程序进行身份验证。我对客户和领域之间的差异感到困惑。

如果要为SSO管理5个不同的应用程序,那么我是否必须创建5个不同的客户端或5个不同的领域?

如果我说我必须在1个领域下创建5个不同的客户端,那么我可以针对同一领域中的不同客户端执行不同的身份验证流程吗?

2 个答案:

答案 0 :(得分:0)

Keycloak的核心概念是领域。 领域保护和管理一组用户,应用程序和已注册的oauth客户端的安全元数据。可以在管理控制台中的特定领域内创建用户。 可以在领域级别定义角色(权限类型),还可以设置用户角色映射以将这些权限分配给特定用户。

通常来说,客户端代表一些用户可以访问的资源。 Keycloak的内置客户端供内部使用keycloak。

应用程序示例可以是任何移动应用程序。客户端可以是简单的REST API。

答案 1 :(得分:0)

根据Keycloak文档

  1. 领域-领域管理一组用户,凭据,角色和组。用户属于并登录到领域。领域是彼此隔离的,只能管理和验证他们控制的用户。

  2. 客户端是可以请求Keycloak验证用户身份的实体。大多数情况下,客户端是希望使用Keycloak保护自己并提供单一登录解决方案的应用程序和服务。客户端也可以是仅想请求身份信息或访问令牌的实体,以便它们可以安全地调用由Keycloak保护的网络上的其他服务。

对于您的方案,您可以在一个领域下创建5个不同的客户端。 Keycloak为单点登录提供了开箱即用的支持。有关更多信息,请参阅Keycloak文档keycloak documentation link