将 ldap 属性用于 role-ldap-mapper 角色名称

Use ldap attribute for role-ldap-mapper role name

我正在尝试将我的角色从我的 LDAP 同步到 keycloak。因为我的域中有共享我所需角色名称的对象,所以我不能将 cn 用作“角色名称 LDAP 属性”。相反,我想创建前缀为 keycloak-mygroup 的组,并在 keycloak 角色中省略所述前缀。

如果这不可能,我想创建这些带有前缀的组,并​​使用组的另一个属性作为角色名称。我要同步的角色已经存在于我的 keycloak 实例中。

如果我尝试使用像描述这样的属性,我会收到错误消息(“违反唯一键约束“UK_J3RWUVD56ONTGSUHOGM184WW2-2”。无法将重复的键插入到 dbo.KEYCLOAK_ROLE 对象中。重复项键值是(,默认值)。”)并且如果我使用像 distinguishedName 这样的属性(那些角色 存在)一切都会被创建。

如何为我的角色名称使用与 cn 不同的属性并使其同步?

我能够解决这个问题。如果组缺少用于组名的属性,则会发生错误。每个组 必须 具有 used 属性,否则所有组的同步都将失败。