tro*_*r19 3 rest roles user-roles keycloak
我想问一下,如果有人知道,为什么REST ADMIN API请求中的用户详细信息中没有角色.我看到了一些涉及这个主题的帖子,但是没有明确的答案,或者他们建议使用keycloak-admin-client,但这似乎不太方便.也许我需要在管理控制台中映射角色或使用声明?角色是最重要的用户属性之一,因此它们没有被检索为其他用户属性的原因?有什么建议吗?谢谢
GET /auth/admin/realms/{realm}/users
{
"id": "efa7e6c0-139f-44d8-baa8-10822ed2a9c1",
"createdTimestamp": 1516707328588,
"username": "testuser",
"enabled": true,
"totp": false,
"emailVerified": false,
"firstName": "Test",
"lastName": "User",
"email": "test@xxx.com",
"attributes": {"xxx": ["123456"]},
"disableableCredentialTypes": ["password"],
"requiredActions": []
}
Run Code Online (Sandbox Code Playgroud)
您没有在用户详细信息中获得角色,因为REST API完全基于资源,而角色是仅与用户关联的单独对象.以下REST URL可用于获取用户的角色
获取关联的域角色:
GET /auth/admin/realms/{realm}/users/{user-uuid}/role-mappings/realm
获取特定客户端的关联角色:
GET /auth/admin/realms/{realm}/users/{user-uuid}/role-mappings/clients/{client-uuid}