不在主域中的用户需要哪些角色/配置才能有效使用 Keycloak 15 Admin REST API?
我们成功使用在领域管理客户端中分配了领域管理员角色的帐户来获取 admin-cli 客户端的令牌。
这仍然有效。
我不记得多久了,但从 KC 14 迁移到 KC 15 后,我们现在在尝试调用管理 cli 端点时遇到 403 错误,例如:
/auth/admin/realms/${realm}/users/${userID}/role-mappings/clients/${appClientUUID}
/auth/admin/realms/${realm}/users/${userid}
等等
如果它抛出 401,我就知道这至少是一个凭据问题,但令牌端点确实会推出访问令牌:
{
"alg": "RS256",
"typ": "JWT",
"kid": "{kid}"
}.{
"exp": 1635328475,
"iat": 1635328175,
"jti": "b621421d-ad69-4ddf-bedb-2c0d5da360cd",
"iss": "{keycloak URL}",
"sub": "{subvalue}",
"typ": "Bearer",
"azp": "admin-cli",
"session_state": "{uuid}",
"acr": "1",
"scope": "openid email profile",
"sid": "986dce48-2ef2-49e5-9152-4e54396ff2a4",
"email_verified": true,
"name": "-",
"preferred_username": "-",
"given_name": "-",
"family_name": "-",
"email": "-"
}.[Signature]
令我惊讶的是,令牌中似乎没有包含任何角色。
有谁知道 KC 15 的 Admin Rest API 可能出了什么问题/配置错误吗?
事实证明,这里唯一的问题是我在发出请求时指定的协议。有时会发生小学生的错误。
对于那些在这里谷歌搜索相同内容的人:检查您的用户是否在客户端
realm-admin
中分配了 realm-management
角色。其他一切都由 Keycloak 在内部处理。
我有同样的问题,所以我只使用领域管理,它的工作