如何通过 REST API 将 Keycloak client-role 添加到组

How to add Keycloak client-role to group via REST API

类似于this Question 我正在尝试将角色添加到组(组角色映射)。除了在我的例子中我需要添加一个客户端角色而不是一个领域角色。

我尝试根据我的需要调整上述问题中的答案,但遗憾的是没有成功。

{SERVER}:81/auth/admin/realms/master/groups/{GROUP_ID}/role-mappings/

给我一个“RESTEASY003650:没有找到 POST 的资源方法,return 405 允许 header”-错误

我也试过在路径中添加客户端

{SERVER}:81/auth/admin/realms/master/groups/{GROUP_ID}/role-mappings/clients/{ID_OF_CLIENT[not Client-ID]}/

但是这样做会给我一个“未知错误”

原来

{SERVER}:81/auth/admin/realms/master/groups/{GROUP_ID}/role-mappings/clients/{ID_OF_CLIENT[not Client-ID]}/

路径实际上是正确的。

“未知错误”是因为在使用的请求中发送了单个角色 object 而不是数组。将请求放入 [] 即可解决问题。

有了这个 body 就可以了:

[{
    "id":"{ROLE_ID}",
    "name":"IamATEstRolE"
}]