-
Notifications
You must be signed in to change notification settings - Fork 349
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Infer sign out scheme when using external identity providers and asp.net identity #1265
Conversation
// Identity's cookie at sign out time. If the sign out scheme is explicitly | ||
// set, then we don't override that though. | ||
|
||
if (DefaultAuthSchemeIsAspNetIdentity() && |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This logic has been refactored a bit to make the intentions clearer
/// <summary> | ||
/// Gets a value indicating if the SignOutScheme was set explicitly, either by application logic or by options binding. | ||
/// </summary> | ||
public bool SignOutSchemeSetExplicitly { get => _signOutScheme != null; } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The options class now understands if the sign out scheme has actually been set. We use that in our configuration so that we don't override a user who is trying to set the scheme explicitly.
@brockallen I've made some changes to this PR, would you take a look and review please? |
Redirecting back to client application after logging out from the external identity provider
User is not redirected back to the client application from external identity provider, when identity server is configured for asp.net identity.
Link to the Issue
After some debugging of the duende and Microsoft sources, I've discovered that the reason for the redirection problem is the absence of id token. SignOutScheme which is used to retrieve id token from the user is set to default value, but default authentication scheme after configuring identity server for asp.net identity is changed to Application.Identity.