KeyCloak在启用“管理用户”的同时将用户管理限制为某些组

时间:2018-07-31 15:16:56

标签: keycloak keycloak-services

我使用KeyCloak管理控制台尝试制定以下用例。

我们有X组和Y组。

“ Group X Admin”角色可以执行以下操作:

  1. 可以创建没有组的用户。
  2. 可以将没有组的用户分配到组X。
  3. 可以编辑和管理X组中的用户。
  4. 无法查看/编辑/管理Y组中的用户。

为了实现第1种情况,我必须使“ Group X Admin”成为与领域管理客户端的“ manage-users”角色关联的复合角色。 但是,执行此操作后,“ X组管理员”现在有权查看/管理/编辑Y组用户。

似乎我不能限制对Y组的访问,因为细粒度权限似乎完全被Manage-users角色所覆盖。

是否有一种方法可以在限制对某些组的访问的同时授予“添加用户”权限?

2 个答案:

答案 0 :(得分:0)

似乎在当前管理控制台中无法实现:(。 我也浏览了文档(甚至通过源代码;)),却没有找到方法。 也许最好在keycloak jira项目中创建一个请求。 顺便说一句,我也一直在寻找解决完全相同的问题。 实际上,有一个关于记录对管理控制台的细粒度权限的吉拉票。 https://issues.jboss.org/browse/KEYCLOAK-3444 也许您可以在此处发表评论或打开新故事

答案 1 :(得分:0)

您应该看看Fine Grain Admin Permissions。它仍处于预览状态(因此RedHat不提供支持),但这是您正在寻找的功能。

我当然已经测试了可以满足第3项和第4项要求的设置。11.3.2 Restrict User Role Mapping章中的描述应该使您足够接近第2项。第1项可能需要更多研究。我不能告诉你这是否可行。

即使精细谷物管理权限非常强大,我们仍然得出结论,这不足以满足我们的要求。因此,我们将其丢弃,并采用了另一种解决方案(Keycloak前面的特权服务,用于委派用户管理)。