3

是否可以让一个领域的用户在 keycloak 中管理另一个领域?我的目标是拥有 2 个领域 - adminRealm 和 userRalm。在 adminRealm 中应该是用户,他们将能够登录到我们的管理应用程序,在那里他们可以通过 Keycloak rest api 创建“普通用户”,并将其放入 userRealm。

目前我的解决方案在一个领域工作,我有管理员用户可以登录我的管理应用程序,并且他可以在同一领域创建用户。但是如果我想在另一个领域创建用户,我会收到 403 错误。那么有什么方法可以让管理员用户管理另一个领域(例如创建用户等)?

4

1 回答 1

7

您应该使用主域来存储管理员帐户。非主域相互隔离。如果您查看主域中的客户端列表,您应该会看到由具有 OIDC id 的客户端表示的每个域,例如“foo-realm”。此客户端代表相应领域的管理 REST API,具有此客户端授予角色的用户可以对相应 API 执行管理请求。

例如,您有foo领域,其中将包含普通应用程序用户。为了实现引入能够从foo管理用户的管理员帐户的目标,您必须在主域中创建 foo-admin 用户并授予他foo-realm.realm-admin角色。现在这个用户可以完全控制 foo 领域,但不能控制主领域。您还可以将foo-realm.realm-admin角色映射到主领域中的某个组并向其中添加用户(因此,如果将来出现任何更改,您只需更改组角色设置)

于 2020-05-14T06:28:04.807 回答