jboss/keycloak:16.1.1能否通过REST API创建及查询用户?
问题解答
问题1:jboss/keycloak:16.1.1是否支持通过REST API创建及查询用户?
jboss/keycloak:16.1.1完全支持通过REST API进行用户的创建与查询操作。你没找到相关接口,大概率是混淆了客户端API和管理API:
- 用户管理属于Keycloak的Admin REST API范畴,核心接口路径如下:
- 查询用户:
GET /admin/realms/{realm-name}/users - 创建用户:
POST /admin/realms/{realm-name}/users
- 查询用户:
- 注意:这类API需要使用具备管理权限的令牌访问,而非普通客户端获取的基础令牌。
问题2:需为客户端分配哪些角色才能创建或查询用户?
你当前令牌包含的default-roles-master等角色不具备用户管理权限,需要给客户端的服务账户分配realm-management客户端下的对应角色:
- 查询用户:需添加
view-users角色 - 创建/修改/删除用户:需添加
manage-users角色
具体操作步骤(Keycloak控制台内):
- 进入目标客户端的Service Account Roles页面
- 在Client Roles下拉框选择
realm-management - 将
view-users/manage-users添加到Assigned Roles列表中 - 重新获取令牌,此时令牌会包含对应管理权限,即可正常调用用户API
内容的提问来源于stack exchange,提问作者Jeff
相关产品推荐
相关产品推荐

