web-dev-qa-db-fra.com

Demande de déconnexion Keycloak

Je voulais demander s'il existe un moyen de se déconnecter de keycloak via une seule requête http.

J'ai déjà essayé de POST /protocol/openid-connect/logout ou /tokens/logout, mais le résultat est toujours un problème d'origine.

Mais l'origine appelante est configurée dans keycloak et la connexion avec une demande fonctionne.

Avez-vous la possibilité de vous déconnecter sans rediriger ou d'ouvrir une autre fenêtre?

Cordialement et merci! :)

9
Stack

De la documentation officielle :

Vous pouvez vous déconnecter d'une application Web de plusieurs manières. Pour Java conteneurs de servlet EE, vous pouvez appeler HttpServletRequest.logout().

Pour les autres applications de navigateur, vous pouvez rediriger le navigateur vers http://auth-server/auth/realms/{realm-name}/protocol/openid-connect/logout?redirect_uri=encodedRedirectUri, qui vous déconnecte si vous avez une session SSO avec votre navigateur.

Pour obtenir l'URL exacte de l'application (configuration Host, realm et redirect_uri):

  • Connectez-vous à votre compte utilisateur Keycloak
  • Ouvrez la console développeur du navigateur
  • Effectuer l'opération de déconnexion
  • Notez l'URL qui a été utilisée pour demander la déconnexion
  • Utilisez la même URL de votre application pour effectuer la déconnexion
5
aName