jboss/keycloak:16.1.1是否支持REST API?调用404问题咨询
Keycloak 16.1.1 REST API Token请求404问题解决
问题根源:新旧版本API路径差异
jboss/keycloak:16.1.1是基于WildFly的旧版本发行版,其API路径与你之前使用的quay.io/keycloak/keycloak:23.0(新版Quarkus架构)完全不同。你调用的/admin/realms/master/protocol/openid-connect/token是新版路径,旧版本的Token接口并不在/admin路径下。
正确的Token获取接口
对于16.1.1版本,获取客户端凭证Token的正确接口为:
POST http://localhost:8080/auth/realms/master/protocol/openid-connect/token
关键请求要求
- 请求方法必须是POST,不能用GET
- 请求体需以
form-data格式传入以下参数:grant_type:client_credentials(若使用客户端凭证模式)client_id:admin-rest-client(你创建的客户端ID)client_secret: 你配置的客户端密钥
- 旧版本管理API的前缀是
/auth/admin,例如查询所有 realms 的接口为:
调用时需在请求头携带GET http://localhost:8080/auth/admin/realmsAuthorization: Bearer <获取到的Token>
验证步骤
- 发送POST请求到上述正确的Token接口,携带参数
- 拿到有效Token后,将其放入管理API请求的Authorization头中,即可正常调用接口
内容的提问来源于stack exchange,提问作者Jeff
相关产品推荐
相关产品推荐

