J'essaie d'explorer les fonctionnalités du serveur KeyCloak et je souhaite obtenir des informations sur le jeton d'accès en utilisant le point de terminaison/openid-connect/token/introspect.
Donc, j'envoie la prochaine demande à ce point de terminaison
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
Voici donc ce que j'ai comme réponse:
{"error":"invalid_request","error_description":"Client not allowed."}*
Connection #0 to Host localhost left intact
et voici ce que je vois dans les journaux de KeyCloak:
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
Donc, je ne peux pas l'obtenir - comment dois-je faire correctement la demande de keycloak dans ce cas concernant cette application de produit a un accès public. S'il vous plaît, expliquez!
Il semble que vous ne puissiez pas utiliser le point de terminaison/openid-connect/token/introspect lorsque votre client a un type d'accès public.
Alors, passez au TYPE D'ACCÈS CONFIDENTIEL et utilisez
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
Ça fonctionne bien.