2017-07-27 1 views
1

J'ai un problème lorsque je ferme le signe dans le dialogue de msal avec le bouton de fermeture supérieur droit (rouge x), que je reçois de l'appel de AcquireTokenAsync(scope).Boîte de dialogue du navigateur MSAL fermer

Le problème est, j'obtiens un résultat valide de AcquireToken, le résultat est le même que je reçois d'un login avant.

Détail: Je me connecte avec un compte du répertoire actif b2c. fonctionne. Ensuite, déconnectez-vous, effacez les cookies et le cache de jetons supprimez également l'utilisateur de PublicClientApplication.Users. Connectez-vous à nouveau, Le AcquireTokenSilent jette un MsalUiRequiredException comme prévu, avec AcquireToken le SignIn -Dialog s'ouvre, je peux maintenant choisir le compte que je me suis connecté avant, (mais j'ai effacé tous, étrange), quand je puis retirer le compte (les trois points, dans le coin supérieur droit de la boîte de dialogue) et dire ensuite annuler, je reçois le résultat nul, mais lorsque je ferme la boîte de dialogue de connexion, j'obtiens le même résultat que lorsque je me connecte.

un comportement normal, car le compte de la dernière connexion est quelque part enregistré et je dois les supprimer, ou manquer quelque chose d'autre? J'utilise la version d'aperçu de MSAL 1.1.0, dans une application Desktop WPF. Aussi avec un propre TokenCache, mais ceux-ci supprime chaque signe les informations enregistrées.

grâce dstreissi

Répondre

0

j'ai tout compris, les MSAL fonctionne comme prévu, j'ai utilisé l'exemple de code de Azure-Samples/active-directory-dotnet-desktop-msgraph-v2. Il y a un try-catch autour du AcquireToken. Ces catch a MsalException. Si vous annulez, le AcquireToken lève un MsalException. Je l'ai attrapé et plus nouveau le jeter encore. Pour la même AuthenticationResult, j'ai oublié de le réinitialiser.

Donc, msal 1.1.0-preview fonctionne très bien pour moi maintenant.