一、环境描述
keycloak版本:23.0.7
keycloak页面基础配置:keycloak-鉴权springboot-优快云博客 我的这篇博客中有简单配置方式,不赘述。
keycloak有自己的用户体系,但是为第三方服务鉴权时可能会用到第三方服务的用户体系。这时候操作第三方服务的用户体系时可以通过API同步操作到keycloak中。
官方文档:
获取token:
二、开始干活
1、获取token
http://localhost:8080/realms/master/protocol/openid-connect/token
注意,如果获取token的ip,必须和将来调用API的ip相同,否则token会鉴权不通过
2、添加token
添加token,后边的例子不再说明添加token,每一个api都需要带token
3、添加用户(区分realm用户和client用户)
post 方式
http://localhost:8080/admin/realms/master/users
添加成功,虽然没有返回值,但是在keycloak管理界面中已经看到添加的用户了
4、获取当前用户权限内的用户列表
从而拿到userid
get方式
http://localhost:8080/admin/realms/master/users
5、使用userid添加或修改用户密码
put方式
http://localhost:8080/admin/realms/master/users/4dff211d-9dc5-4eb1-8689-4b3cf8a9b1eb/reset-password
6、删除用户
delete方式
http://localhost:8080/admin/realms/master/users/b5f03860-f91f-4b5c-a873-7fd2115a343e
7、用户与角色关联(区分realm角色和client角色,以下为client角色)
post方式
8、更新密码
用户手动改库后使密码生效
三、注意事项
1、获取token的keycloak地址必须和使用token请求的keycloak地址一样。127.0.0.1 和 localhost生成出的token都是不一样的。
2、官方文档的API可以选择版本