keycloak - 如何使用 keycloak rest-api 将领域管理员添加到用户

标签 keycloak keycloak-rest-api

当我向用户添加角色时,我按名称搜索该客户端角色,然后获取此角色表示并添加到用户。但我不知道如何搜索“realm-admin”角色以及如何使用rest api 将其添加到用户。

这是我用来搜索我的客户端角色 (GET) 的 URL:

https://{my-keycloak-url}/auth/admin/realms/{realm-name}/clients/{id}/roles/{role-name}

这就是我用来将此角色添加到用户 (PUT) 的 URL:

https://{my-keycloak-url}/auth/admin/realms/{realm-name}/users/{user-id}/role-mappings/clients/{client-id}

这个“领域管理员”相当于什么?

最佳答案

您可以通过此 API 为用户分配 realm-admin 角色

POST https://{my-keycloak-url}/auth/admin/realms/{realm-name}/users/{user-id}/role-mappings/clients/{realm-management-id}

使用此主体有效负载

[
    {
        "id":{realm-admin-id},
        "name":"realm-admin",
        "description":"${role_realm-admin}",
        "composite":true,
        "clientRole":true,
        "containerId":{realm-management-id}
    }
]

获取master token

这是 Postman 的演示 enter image description here

或 curl 命令

curl --location --request POST 'http://localhost:8180/auth/admin/realms/my-realm/users/1b058869-a65d-4648-b4e2-4f5bf7430ea6/role-mappings/clients/33f00bff-d735-4402-88bc-51ea055d15c1' \
--header 'Authorization: Bearer $token' \
--header 'Content-Type: application/json' \
--data-raw '[
    {
        "id":"c8a60657-9545-4ab3-9913-0186fdb93213",
        "name":"realm-admin",
        "description":"${role_realm-admin}",
        "composite":true,
        "clientRole":true,
        "containerId":"33f00bff-d735-4402-88bc-51ea055d15c1"
    }
]'

通过用户列表 API 获取 {user-id} enter image description here

通过客户端列表 API 获取 {realm-management-id} enter image description here

通过客户端角色列表 API 获取 {realm-admin-id} enter image description here

关于keycloak - 如何使用 keycloak rest-api 将领域管理员添加到用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74030920/

相关文章:

angular - 如何将 Angular 应用程序从keycloak登录重定向到特定路线

javascript - 如何在 keycloak Admin API 中使用用户数据获取领域角色

java - Spring 应用程序对 keycloak 的基本身份验证

keycloak - 如何将 KeyCloak 与 WSo2 Identity Server 集成? WSo2 作为 IDP

authentication - 如何使用 Keycloak 保护前端和其余 API

keycloak-rest-api - key 斗篷 API :- Identify Users Realm for login

Keycloak 17 : Unsatisfied dependency for type org. keycloak.models.KeycloakSession 和限定符 [@Default]

spring-boot - 如何在管理控制台中阻止特定客户端的访问并撤销其颁发的 token

keycloak - 注册后如何在keycloak用户模型中存储外部数据

keycloak - 有没有办法使用 Keycloak Admin REST API 将用户添加到 Keycloak 中的多个组(批量)?