我目前正在开发一个能够离线运行的分布式(多站点)应用程序。
我希望能够从 Keycloak 管理实例远程和单独配置 Keycloak 的每个实例。此外,每个实例都有自己的用户、策略和权限。
我怎样才能做到这一点?
答案 0 :(得分:2)
如果您是 Keycloak 的新手,我建议您先阅读它的文档,它会让您在做决定时更轻松。
<块引用>此外,每个实例都有自己的用户、策略和 权限。
从 Keycloak Documentation 部分 Core Concepts and Terms
可以阅读以下内容:
领域 :领域管理一组用户、凭据、角色和组。用户属于并登录到一个领域。领域彼此隔离,只能管理和验证它们控制的用户。
哪些接缝适合满足该要求。
<块引用>我希望能够配置 Keycloak 的每个实例 从 Keycloak 管理实例远程和单独。
这是不可能的,但是您可以让多个 Keycloak 实例对同一个 Keycloak 实例执行 Identity Brokering。从有关身份代理的文档中可以阅读:
<块引用>身份代理是一种中介服务,它连接多个 具有不同身份提供商的服务提供商。作为 中介服务,身份代理负责创建 与外部身份提供者的信任关系,以便 使用其身份访问服务公开的内部服务 供应商。
从用户的角度来看,身份代理提供了一个以用户为中心的 和集中管理跨不同安全性的身份的方式 域或领域。现有帐户可以与一个或多个链接 来自不同身份提供者的身份,甚至基于 从他们那里获得的身份信息。
通过这种方法,用户将被重定向到主 Keycloak 实例的首页,然后可以选择登录到特定的 Keycloak 实例。
答案 1 :(得分:1)
您可能不需要不同的实例来执行您所描述的操作。使用不同的领域似乎更合适。领域具有独立的用户、角色、组、密码策略等。
答案 2 :(得分:0)
Keycloack 已经可以处理多租户,您无需为每个组织设置 Keycloack 实例。只需为每个组织定义一个特定的领域。