-
-
Notifications
You must be signed in to change notification settings - Fork 763
Logout broken after adding partial sign in #3853
Comments
Not sure what the issue is. What do the logs say at logout time? |
Hey Brock. I am trying to put together an MFA flow (without ASPNET Identity). Below is how I initiate partial login.
The RunMfaRoutines() method does some non IdentityServer related logic and finally issues a partial authentication context like below:
The user is successfully logged in. When I try the connect/endsession endpoint, it just ends the identityserver session without triggering an ADFS logout. The "RedirectToIdentityProvider" is not called through the Ws-fed middleware. I still land on the logged out page without any errors though. So next time when I login, the ADFS cookie still exists and after a "RedirectToIdentityProvider" through the Ws-fed middleware, I land into the AuthenticateExternalAsync method again with a logged in user. The ADFS logout works by itself fine if I don't add the partial login piece, and instead issue a full login context. There are no exceptions and the logs look fine. Here are the logs: 09/10/2017 19:11:50 -05:00 [Information] MyIdentityServer.Core.RequestLogging.RequestLoggingMiddleware: Start request https://myidserver/connect/endsession |
If you create the login cookie then you need to make sure you set an idp claim so we know internally what external provider to trigger. Perhaps that's it? If not, then I think you'd need to contact me for consulting support to debug. |
Question / Issue
I am using ADFS over ws-fed from IdentityServer3 for user authentication. I am also intercepting the AuthenticateExternalAsync call to issue a partial login after a user successfully logs in and returns from ADFS.
I perform some validations and then use the below code to resume the login process.
This way login works fine and the user is not intercepted again during the session. However on logout, the redirect to ADFS does not happen. When I try to login again, I notice that I am already logged into ADFS and the AuthenticateExternalAsync is triggered directly without the RedirectToIdentityProvider call.
Am I missing something to setup partial login?
The text was updated successfully, but these errors were encountered: