如何使用客户端在Keycloak中发布realm角色?

bud*_*dha 4 roles keycloak keycloak-rest-api

我在 keycloak 中创建了一个客户端并将其访问类型配置为“机密”。

我可以使用protocol/openid-connect/token带有 clientId 和客户端密钥的 REST API 来获取此客户端的访问令牌。

在我的设计中,有一个用例,我需要使用客户端访问令牌在其领域中发布角色(该角色需要属于领域,而不是该客户端)。然后我可以看到帖子请求被拒绝。我已将此客户端的范围配置为完整范围,但没有帮助。

知道这是否可能吗?如果是,该客户端需要什么配置?

dre*_*ash 5

请尝试以下操作:

(旧的 Keycloak 用户界面)

  1. 进入您的领域 > 客户并选择您的客户;
  2. 切换Service Accounts EnabledON,然后单击[SAVE]
  3. 切换到Service Accounts Roles选项卡;
  4. Client Roles下拉菜单中选择realm-management客户端
  5. 选择realm-admin,然后单击Add Selected并尝试一下。

在此输入图像描述

(新的Keycloak UI)

  1. 选择您的领域,然后转到Clients并选择您的客户;
  2. 在身份验证流程中选择Service accounts roles并单击[SAVE];
  3. 切换到Service Accounts Roles选项卡;
  4. 点击Assign Role
  5. Search by role name搜索角色名称“realm-admin”时,选择它并单击Assign

在此输入图像描述