2017-10-18 3 views
0

J'utilise Kentor/SampleOwinApplication et je peux me connecter et déconnecter avec succès de mon IDP. Maintenant, j'ai fait des tests avec des utilisateurs révoqués dans la base de données Asp.Net. Après la connexion réussie à la fédération et la reprise dans ExternalLoginCallback, SignInManager.ExternalSignInAsync renvoie LockedOut et j'attermine sur la page de révocation. Le problème est que je ne suis pas connecté pour Asp.Net mais je suis toujours pour mon Idp, donc si j'essaie de me connecter à nouveau, je suis considéré comme déjà signé Je suis redirigé instantanément vers mon service sans la chance d'essayer de se connecter avec un autre utilisateur. Je comprends que je devrais me déconnecter de mon IDP quand je suis dans le statut LockedOut mais cela semble difficile à faire avec Kentor car spécifiquement je ne suis pas connecté sur le site Asp.net!Statut de LockedOut de processus avec Kentor/Owin

Répondre

0

Cas de bordure intéressant! Ce que vous devez faire est que lorsque vous trouvez dans le ExternalLoginCallback lorsque vous découvrez que vous êtes verrouillé, vous devez kick d'une déconnexion fédérée en déclenchant une déconnexion avec l'identité externe en tant qu'argument. Cela redirigera l'utilisateur vers l'Idp et invalidera la session Idp. Notez que cela peut avoir des effets secondaires si l'utilisateur est déjà connecté à d'autres services à partir de la même IDP. Ces autres services seront également déconnectés.