Can anyone confirm if the Sitecore.Security.Authentication.AuthenticationManager.Logout();
handles the logout from AdB2c IDP
as well, as per documentation from at:
Sitecore automatically handles this. But I don't see the cookies getting cleared.
Code from processor in which PostLogoutRedirectUri is set-
private OpenIdConnectAuthenticationOptions CreateOptionsFromPolicy(string policy)
{
var identityProvider = GetIdentityProvider();
return new OpenIdConnectAuthenticationOptions
{
// For each policy, give OWIN the policy-specific metadata address, and
// set the authentication type to the id of the policy
MetadataAddress = String.Format(WellKnownMetadata, Tenant, policy),
//AuthenticationType = GetAuthenticationType(),
AuthenticationType = policy,
AuthenticationMode = AuthenticationMode.Passive,
RequireHttpsMetadata = RequireHttps,
// These are standard OpenID Connect parameters, with values pulled from settings
ClientId = ClientId,
// Scope = "openid profile offline_access",
Scope = $"openid profile offline_access { _defaultScope }",
//ResponseType = "id_token",
RedirectUri = RedirectUri, //SK RedirectIframeUri
PostLogoutRedirectUri = RedirectUri,
Notifications = new OpenIdConnectAuthenticationNotifications
{
RedirectToIdentityProvider = OnRedirectToIdentityProvider,
AuthenticationFailed = OnAuthenticationFailed,
SecurityTokenValidated = OnSecurityTokenValidated,
AuthorizationCodeReceived = OnAuthorizationCodeReceived,
},
// This piece is optional - it is used for displaying the user's name in the navigation bar.
TokenValidationParameters = new TokenValidationParameters
{
NameClaimType = "name",
ValidateIssuer = false,
SaveSigninToken = identityProvider.TriggerExternalSignOut
},
};
}
IdentityProcider config
<identityProvider id="AzureAdB2C" type="Sitecore.Owin.Authentication.Configuration.DefaultIdentityProvider, Sitecore.Owin.Authentication">
<param desc="name">$(id)</param>
<param desc="domainManager" type="Sitecore.Abstractions.BaseDomainManager" resolve="true" />
<caption>AzureAdB2C</caption>
<domain>extranet</domain>
<enabled>true</enabled>
<triggerExternalSignOut>true</triggerExternalSignOut>
<transformations hint="list:AddTransformation">
<transformation name="Name Identifier Claim" type="Sitecore.Owin.Authentication.Services.DefaultTransformation, Sitecore.Owin.Authentication">
<sources hint="raw:AddSource">
<claim name="http://schemas.microsoft.com/identity/claims/objectidentifier" />
</sources>
<targets hint="raw:AddTarget">
<claim name="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier" />
</targets>
<keepSource>true</keepSource>
</transformation>