假设我正在使用一个领域 mycomp
在 Keycloak 中处理所有用户(+ master
Keycloak super 管理员的领域)。
我担任客户支持 (CS) 的角色,应该能够查看用户并管理他们的基本数据,如姓名、电子邮件、密码重置等。
我可以授予 realm-management
权限如 manage-users
或 view-users
以 3 种方式向任何用户发送:
问题是给
manage-users
权限 CS 最终能够管理角色和组,因此它能够授予其他用户管理权限。那对我的配置无效 - 它是某个更高级别管理员的角色。如何授予某些用户查看和管理用户基本数据的权限,而不允许他们管理角色?
最佳答案
所以在一天结束时,我终于设法找到了一个可行的解决方案。
问题是 角色 manage-users
不能被 覆盖政策 .
在 Keycloak ( https://issues.redhat.com/browse/KEYCLOAK-18151 ) 的 Pedro Igor Silva 的帮助下,我设法设置了满足用例的配置。
使用 Keycloak 预览功能 admin_fine_grained_authz
启用我创建了全局复合 角色 user-managers
并授予它 query-users
角色来自 realm-management
客户。然后我创建了 政策 授予 manage
许可 Users
用户拥有时的资源 user-manager
角色。
这完美地工作
关于permissions - 如何在Keycloak中授予某些用户部分用户管理权限?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67279823/