首页 > 解决方案 > Keycloak 角色映射

问题描述

我有一个用 keycloak 保护的 Spring Boot 应用程序。领域中的每个用户都有我的资源(客户端)的角色。角色在用户选项卡上配置,对于角色映射选项卡下的特定用户作为客户端角色

在此处输入图像描述

我还使用与所有用户来自的LDAP Active Directory的集成。现在,如果我想为 Active Directory (AD) 组添加特定角色,我必须转到 Active Directory,获取特定组的所有用户并通过 keycloak api 在单独的应用程序中添加所需角色,这是非常糟糕的逻辑。

在以前版本的 keycloak (5.0.1) 中,它在 javascript 上具有Script Mapper,可以获取 Active Directory 组并将它们映射到特定客户端的角色。在最新版本 8.0.1 中,它没有这样的映射器。

我想知道,最新版本的 Keycloak 中是否有任何映射器或其他功能可以将 AD 组映射到资源角色。所以,我可以说group_name有角色userforclient_name和角色user出现在 keycloak 令牌下resource_accessclient_name. roles列表

在此处输入图像描述

标签: springspring-securitykeycloak

解决方案


您可以按照以下步骤实现您想要的:

  1. 转到左侧菜单上的“组”
  2. 选择组
  3. 使用“角色映射”选项卡,选择应分配给该组成员的客户端角色。

推荐阅读