Oauth 2.0 KeyClope服务器的内省端点

Oauth 2.0 KeyClope服务器的内省端点,oauth-2.0,openid,keycloak,Oauth 2.0,Openid,Keycloak,我正在尝试探索KeyClope服务器的功能,并希望通过使用/openid connect/token/introspect endpoint获取有关访问令牌的信息 因此,我将向该端点发送下一个请求 curl -v --data "token_type_hint=access_token&client_id=product- app&username=user&token=MY ACCESS TOKEN" http://localhost:8080/auth/realm

我正在尝试探索KeyClope服务器的功能,并希望通过使用/openid connect/token/introspect endpoint获取有关访问令牌的信息

因此,我将向该端点发送下一个请求

curl -v --data "token_type_hint=access_token&client_id=product- 
app&username=user&token=MY ACCESS TOKEN" 
http://localhost:8080/auth/realms/springdemo/protocol/openid- 
connect/token/introspect
这就是我的回答:

{"error":"invalid_request","error_description":"Client not allowed."}* 
Connection #0 to host localhost left intact
这是我在Key斗篷的日志中看到的:

12:00:18,045 WARN  [org.keycloak.events] (default task-13) 
type=INTROSPECT_TOKEN                                     _ERROR, 
realmId=springdemo, clientId=product-app, userId=null, ipAddress=127.0.0                                     
.1, error=invalid_request, detail='Client not allowed.', 
client_auth_method=client-secret

所以,我无法得到它-在这种情况下,关于产品应用程序具有公共访问权限,我应该如何正确地向KeyClope发出请求。请解释一下

当客户端具有公共访问类型时,您似乎无法使用/openid connect/token/introspect端点

因此,请切换到机密访问类型并使用

curl -v --data "client_secret=YOUR_SECRET9&client_id=product- 
app&username=user&token=YOUR_TOKEN" 
http://localhost:8080/auth/realms/springdemo/protocol/openid- 
connect/token/introspect

它很好用

是否可以从前端应用程序客户端访问内省终结点?使用fetch它会给我以下错误:从源“”获取“”的访问已被CORS策略阻止:…,请将请求的模式设置为“无CORS”以获取禁用CORS的资源。