我试图创建具有客户角色的新用户。 我有客户角色: - 行政 - 运算符(operator) - 经理
在创建用户的过程中,我想为用户分配一个客户角色
我的 curl :
curl -X POST -H 'Authorization: Bearer token' -H 'Content-Type: application/json' -i 'http://localhost.com/auth/admin/realms/realm/users' --data '{
"username": "test301@qqq.bbb",
"enabled": true,
"firstName": "",
"lastName": "",
"email": "test301@qqq.bbb",
"credentials": [
{
"type": "password",
"value": "qq",
"temporary": false
}
],
"clientRoles": {
"suppression": [
"Admin"
]
}
}'
用户已成功创建,但角色尚未分配。 我也想在一个请求中执行此操作
最佳答案
这不是为用户分配角色的正确方法。 这是一个循序渐进的过程—— 第 1 步 - 在 keycloak 中创建用户。
curl -X POST -H 'Authorization: Bearer token' -H 'Content-Type: application/json' -i 'http://localhost.com/auth/admin/realms/realm/users' --data '{.....
第 2 步 - 然后使用不同的 API 将此用户映射到特定的客户角色。
POST /admin/realms/{realm}/users/{id}/role-mappings/clients/{client}
有关此 API 的完整规范,您可以在 Keycloak ADMIN API 文档中搜索此 API。这是链接 https://www.keycloak.org/docs-api/3.0/rest-api/index.html 并搜索“将客户端级别的角色添加到用户角色映射”
关于java - 在 Keycloak 中创建新用户期间未分配客户端角色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49818453/