web-dev-qa-db-fra.com

URL de déconnexion Azure AD ne redirigeant pas

Je crée l'URL suivante

https://login.microsoftonline.com/<tenantid>/oauth2/logout?client_id=<clientId>&post_logout_redirect_uri=<encodedurl>

Cela ressemble à quelque chose

https://login.microsoftonline.com/f4aaf6e1-ffff-ffff-bb63-4e8ebf728113/oauth2/logout?client_id=f562b4e3-ffff-ffff-b4bb-49ca64216e75&post_logout_redirect_uri=https%3A%2F%2Fmyazureapp.azurewebsites.net

Il me déconnecte mais ne me redirige pas vers mon application

Comme cette URL pour Azure

https://login.microsoftonline.com/common/oauth2/logout?post_logout_redirect_uri=https%3a%2f%2fmanage.windowsazure.com%2fSignOut%2fComplete

J'ai regardé les Q associés suggérés et j'ai essayé quelques variantes.

Edit il s'est avéré être un problème intermittent qui, je suppose, était dû au fait que certains cookies/autres états n'étaient pas réinitialisés lorsque je faisais mes cycles de développement/test. Avec un nouveau navigateur, cela fonctionne. Lorsque cela fonctionne, l'écran de déconnexion dit quelque chose comme "Attendez un moment pendant que nous vous déconnectons" puis il redirige, quand cela ne fonctionne pas, l'écran dit "vous avez été déconnecté, fermez votre navigateur"

6
Steve Drake

Définissez la propriété URL de déconnexion dans votre application AD.

  1. Connectez-vous au portail du centre d'administration AAD
  2. Accédez aux enregistrements d'application comme indiqué enter image description here
  3. Sélectionnez votre application AD
  4. Accéder aux propriétés
  5. Mettez à jour l'URL de redirection de déconnexion de votre application comme indiqué enter image description here
  6. Sauver
2
juvchan

Je suppose que vous utilisiez le flux OpenIDConnect et que vous souhaitez vous déconnecter de l'utilisateur. Pour assurer la redirection d'Azure AD vers l'URL, nous spécifions avec post_logout_redirect_uri paramètre, nous devons nous inscrire dans les URL de réponse du registre des applications sur le portail Azure.

Après cela, nous devons également nous assurer que les utilisateurs se déconnectent correctement dans Azure AD. Par exemple, nous connectons l'utilisateur après avoir déconnecté l'utilisateur. Cette fois, la redirection devrait fonctionner normalement. Ensuite, nous envoyons à nouveau une demande de déconnexion, puis cette fois la redirection ne fonctionnera pas car l'utilisateur est déjà déconnecté.

De plus, il n'est pas nécessaire de fournir le client_id paramètre pour la demande à end_session_endpoint via le flux OpenIdConnect. Plus de détails sur cette OpenIdConnect, vous pouvez vous référer au document ci-dessous:

Autorisez l'accès aux applications Web à l'aide d'OpenID Connect et d'Azure Active Directory

1
Fei Xue - MSFT

J'ai également eu ce problème, ce qui a fonctionné pour moi est:

  1. J'ai ajouté mon URL de déconnexion dans les propriétés et comme URL de réponse également.
  2. Le bouton de déconnexion a le href suivant:
https://login.windows.net/<tenant_id_of_your_app>/oauth2/logout?post_logout_redirect_uri=<logout_URL_of_your_app>/logout
0
tnh98