Sessiegedrag in Azure Active Directory B2C configureren

Voordat u begint, gebruikt u de selector Een beleidstype kiezen om het type beleid te kiezen dat u instelt. U kunt in Azure Active Directory B2C op twee manieren definiëren hoe gebruikers met uw toepassingen communiceren: via vooraf gedefinieerde gebruikersstromen of via volledig configureerbaar aangepast beleid. De stappen die in dit artikel zijn vereist, verschillen voor elke methode.

Eenmalige aanmelding (SSO) voegt beveiliging en gemak toe wanneer gebruikers zich aanmelden bij toepassingen in Azure Active Directory B2C (Azure AD B2C). In dit artikel worden de methoden voor eenmalige aanmelding beschreven die worden gebruikt in Azure AD B2C en kunt u de meest geschikte methode voor eenmalige aanmelding kiezen bij het configureren van uw beleid.

Met eenmalige aanmelding melden gebruikers zich eenmaal aan met één account en krijgen ze toegang tot meerdere toepassingen. De toepassing kan een web-, mobiele of toepassing met één pagina zijn, ongeacht de platform- of domeinnaam.

Wanneer de gebruiker zich in eerste instantie aanmeldt bij een toepassing, blijft Azure AD B2C een sessie op basis van cookies behouden. Bij volgende verificatieaanvragen leest en valideert Azure AD B2C de sessie op basis van cookies en geeft een toegangstoken uit zonder dat de gebruiker wordt gevraagd zich opnieuw aan te melden. Als de sessie op basis van cookies verloopt of ongeldig wordt, wordt de gebruiker gevraagd zich opnieuw aan te melden.

Vereisten

Overzicht van Azure AD B2C-sessies

Integratie met Azure AD B2C omvat drie typen SSO-sessies:

  • Azure AD B2C - Sessie beheerd door Azure AD B2C
  • Federatieve id-provider - Sessie beheerd door de id-provider, bijvoorbeeld Facebook-, Salesforce- of Microsoft-account
  • Toepassing : sessie die wordt beheerd door de web-, mobiele of toepassing met één pagina

SSO session

Azure AD B2C-sessie

Wanneer een gebruiker zich verifieert met een lokaal of sociaal account, slaat Azure AD B2C een sessie op basis van cookies op in de browser van de gebruiker. De cookie wordt opgeslagen onder de domeinnaam van de Azure AD B2C-tenant, zoals https://contoso.b2clogin.com.

Wanneer een gebruiker zich aanmeldt met een federatief account, wordt een sessietijdvenster, ook wel time-to-live (TTL) genoemd, gestart. Als de gebruiker zich aanmeldt bij dezelfde of een andere app binnen deze TTL, probeert Azure AD B2C een nieuw toegangstoken te verkrijgen van de federatieve id-provider. Als de sessie van de federatieve id-provider is verlopen of ongeldig is, vraagt de federatieve id-provider de gebruiker om hun referenties. Als de sessie van de gebruiker actief is of als de gebruiker is aangemeld met een lokaal account in plaats van een federatief account, autoriseert Azure AD B2C de gebruiker en voorkomt verdere prompts.

U kunt het sessiegedrag configureren, inclusief de sessie-TTL en hoe Azure AD B2C de sessie deelt tussen beleidsregels en toepassingen.

Sessie van federatieve id-provider

Een id-provider voor sociale netwerken of ondernemingen beheert zijn eigen sessie. De cookie wordt opgeslagen onder de domeinnaam van de id-provider, zoals https://login.salesforce.com. Azure AD B2C heeft geen controle over de sessie van de federatieve id-provider. In plaats daarvan wordt sessiegedrag bepaald door de federatieve id-provider.

Bekijk het volgende scenario:

  1. Een gebruiker meldt zich aan bij Facebook om de feed te controleren.
  2. Later opent de gebruiker uw toepassing en start het aanmeldingsproces. De toepassing leidt de gebruiker om naar Azure AD B2C om het aanmeldingsproces te voltooien.
  3. Op de aanmeldings- of aanmeldingspagina van Azure AD B2C kiest de gebruiker ervoor om zich aan te melden met zijn Facebook-account. De gebruiker wordt omgeleid naar Facebook. Als er een actieve sessie op Facebook is, wordt de gebruiker niet gevraagd hun referenties op te geven en wordt deze onmiddellijk omgeleid naar Azure AD B2C met een Facebook-token.

Toepassingssessie

Een OAuth2-toegangstoken, id-token of SAML-token kan een web-, mobiele of enkele paginatoepassing beveiligen. Wanneer een gebruiker toegang probeert te krijgen tot een beveiligde resource in de app, controleert de app of er een actieve sessie aan de toepassingszijde is. Als er geen app-sessie bestaat of de sessie verloopt, stuurt de app de gebruiker naar de aanmeldingspagina van Azure AD B2C.

De toepassingssessie kan een sessie op basis van cookies zijn die is opgeslagen onder de domeinnaam van de toepassing, zoals https://contoso.com. Mobiele toepassingen kunnen de sessie op een andere manier opslaan, maar met een vergelijkbare benadering.

Gedrag van Azure AD B2C-sessies configureren

U kunt het gedrag van de Azure AD B2C-sessie configureren, waaronder:

  • Levensduur van web-app-sessies (minuten): de hoeveelheid tijd die de Cookie van de Azure AD B2C-sessie wordt opgeslagen in de browser van de gebruiker na een geslaagde verificatie. U kunt de sessielevensduur tot 24 uur instellen.

  • Time-out van web-app-sessie - Geeft aan hoe een sessie wordt verlengd door de instelling voor de levensduur van de sessie of de instelling Aangemeld blijven (KMSI).

    • Rolling - Geeft aan dat de sessie wordt verlengd telkens wanneer de gebruiker een verificatie op basis van cookies uitvoert (standaard).
    • Absoluut : geeft aan dat de gebruiker wordt gedwongen om opnieuw te verifiëren na de opgegeven periode.
  • Configuratie van eenmalige aanmelding: de Azure AD B2C-sessie kan worden geconfigureerd met de volgende bereiken:

    • Tenant : deze instelling is de standaardinstelling. Met deze instelling kunnen meerdere toepassingen en gebruikersstromen in uw B2C-tenant dezelfde gebruikerssessie delen. Zodra een gebruiker zich bijvoorbeeld heeft aangemeld bij een toepassing, kan de gebruiker zich ook naadloos aanmelden bij een andere gebruiker wanneer hij deze opent.
    • Toepassing: met deze instelling kunt u een gebruikerssessie uitsluitend onderhouden voor een toepassing, onafhankelijk van andere toepassingen. U kunt deze instelling bijvoorbeeld gebruiken als u wilt dat de gebruiker zich aanmeldt bij Contoso Pharmacy, ongeacht of de gebruiker al is aangemeld bij Contoso Groceries.
    • Beleid : met deze instelling kunt u een gebruikerssessie exclusief onderhouden voor een gebruikersstroom, onafhankelijk van de toepassingen die deze gebruiken. Azure AD B2C verleent de gebruiker bijvoorbeeld toegang tot onderdelen van meerdere toepassingen met een hogere beveiliging als de gebruiker zich al heeft aangemeld en een MFA-stap (MultiFactor Authentication) heeft voltooid. Deze toegang blijft bestaan zolang de sessie die is gekoppeld aan de gebruikersstroom actief blijft.
    • Onderdrukt: met deze instelling wordt de gebruiker gedwongen de volledige gebruikersstroom door te voeren bij elke uitvoering van het beleid.

De gebruikersstroom configureren

Volg deze stappen om het sessiegedrag in uw gebruikersstroom te configureren:

  1. Meld u aan bij de Azure-portal.
  2. Als u toegang hebt tot meerdere tenants, selecteert u het pictogram Instellingen in het bovenste menu om over te schakelen naar uw Azure AD B2C-tenant in het menu Mappen en abonnementen.
  3. Kies Alle services linksboven in de Azure Portal, zoek Azure AD B2C en selecteer deze.
  4. Selecteer de Gebruikersstromen.
  5. Open de gebruikersstroom die u eerder hebt gemaakt.
  6. Selecteer Eigenschappen.
  7. Configureer de levensduur van de web-app-sessie (minuten), time-out van web-app-sessies, configuratie voor eenmalige aanmelding en vereist id-token in afmeldingsaanvragen indien nodig.
  8. Klik op Opslaan.

Aangepaste beleid configureren

Volg deze stappen om het sessiegedrag in uw aangepaste beleid te configureren:

  1. Open het RP-bestand (Relying Party), bijvoorbeeld SignUpOrSignin.xml

  2. Als deze nog niet bestaat, voegt u het volgende <UserJourneyBehaviors> element toe aan het <RelyingParty> element. Het moet direct na <DefaultUserJourney ReferenceId="UserJourney Id"/>.

    <UserJourneyBehaviors>
      <SingleSignOn Scope="Application" />
      <SessionExpiryType>Absolute</SessionExpiryType>
      <SessionExpiryInSeconds>86400</SessionExpiryInSeconds>
    </UserJourneyBehaviors>
    

    Nadat u de elementen van het gedrag van de gebruikersbeleving hebt toegevoegd, moet het RelyingParty element eruitzien als in het volgende voorbeeld:

    <RelyingParty>
      <DefaultUserJourney ReferenceId="SignUpOrSignIn" />
      <UserJourneyBehaviors>
        <SingleSignOn Scope="Application" />
        <SessionExpiryType>Absolute</SessionExpiryType>
        <SessionExpiryInSeconds>86400</SessionExpiryInSeconds>
      </UserJourneyBehaviors>
      <TechnicalProfile Id="PolicyProfile">
        <DisplayName>PolicyProfile</DisplayName>
        <Protocol Name="OpenIdConnect" />
        <OutputClaims>
          <OutputClaim ClaimTypeReferenceId="displayName" />
          <OutputClaim ClaimTypeReferenceId="givenName" />
          ...
        </OutputClaims>
        <SubjectNamingInfo ClaimType="sub" />
      </TechnicalProfile>
    </RelyingParty>
    
  3. Wijzig de waarde van het Scope kenmerk in een van de mogelijke waarde: Suppressed, Tenant, Applicationof Policy. Raadpleeg het naslagartikel relyingParty voor meer informatie.

  4. Stel het element in op SessionExpiryTypeRolling of Absolute. Raadpleeg het naslagartikel relyingParty voor meer informatie.

  5. Stel het SessionExpiryInSeconds element in op een numerieke waarde tussen 900 seconden (15 minuten) en 86.400 seconden (24 uur). Raadpleeg het naslagartikel relyingParty voor meer informatie.

Aangemeld blijven inschakelen (KMSI)

U kunt de KMSI-functie inschakelen voor gebruikers van uw web en systeemeigen toepassingen met lokale accounts in uw Azure AD B2C-directory. Wanneer u de functie inschakelt, kunnen gebruikers ervoor kiezen om aangemeld te blijven, zodat de sessie actief blijft nadat ze de browser hebben gesloten. De sessie wordt onderhouden door een permanente cookie in te stellen. Gebruikers die KMSI selecteren, kunnen de browser opnieuw openen zonder te worden gevraagd hun gebruikersnaam en wachtwoord opnieuw in te voeren. Deze toegang (permanente cookie) wordt ingetrokken wanneer een gebruiker zich afmeldt. Bekijk de livedemo voor meer informatie.

Example sign-up sign-in page showing a Keep me signed in checkbox

KMSI kan worden geconfigureerd op het niveau van de afzonderlijke gebruikersstroom. Voordat u KMSI inschakelt voor uw gebruikersstromen, moet u rekening houden met het volgende:

  • KMSI wordt alleen ondersteund voor de aanbevolen versies van registratie en aanmelding (SUSI), aanmelding en profielbewerking van gebruikersstromen. Als u momenteel standard (verouderd) of verouderde preview- v2-versies van deze gebruikersstromen hebt en KMSI wilt inschakelen, moet u nieuwe, aanbevolen versies van deze gebruikersstromen maken.
  • KMSI wordt niet ondersteund met gebruikersstromen voor wachtwoordherstel of registratie.
  • Als u KMSI wilt inschakelen voor alle toepassingen in uw tenant, raden we u aan KMSI in te schakelen voor alle gebruikersstromen in uw tenant. Omdat een gebruiker meerdere beleidsregels kan zien tijdens een sessie, kan er een worden gevonden waarvoor KMSI niet is ingeschakeld, waardoor de KMSI-cookie uit de sessie wordt verwijderd.
  • KMSI mag niet worden ingeschakeld op openbare computers.

KMSI configureren voor een gebruikersstroom

KMSI inschakelen voor uw gebruikersstroom:

  1. Meld u aan bij de Azure-portal.

  2. Als u toegang hebt tot meerdere tenants, selecteert u het pictogram Instellingen in het bovenste menu om over te schakelen naar uw Azure AD B2C-tenant in het menu Mappen en abonnementen.

  3. Kies Alle services linksboven in de Azure Portal, zoek Azure AD B2C en selecteer deze.

  4. Selecteer Gebruikersstromen (beleid).

  5. Open de gebruikersstroom die u eerder hebt gemaakt.

  6. Selecteer Eigenschappen.

  7. Selecteer Onder Sessiegedrag de optie Aangemeld blijven. Voer naast Aangemeld blijven (dagen) een waarde in van 1 tot 90 om op te geven hoeveel dagen een sessie open kan blijven.

    Enable keep me signed in session

Gebruikers mogen deze optie niet inschakelen op openbare computers.

De pagina-id configureren

Als u KMSI wilt inschakelen, stelt u het inhoudsdefinitieelement in op pagina-idunifiedssp en paginaversie1.1.0 of hoger.DataUri

  1. Open het extensiebestand van uw beleid. Bijvoorbeeld SocialAndLocalAccounts/TrustFrameworkExtensions.xml. Dit extensiebestand is een van de beleidsbestanden die zijn opgenomen in het aangepaste starter pack voor beleid, dat u in de vereiste hebt verkregen, Aan de slag met aangepaste beleidsregels.

  2. Zoek element BuildingBlocks. Als het element niet aanwezig is, voegt u het toe.

  3. Voeg het element ContentDefinitions toe aan het element BuildingBlocks van het beleid.

    Uw aangepaste beleid moet eruitzien als het volgende codefragment:

    <BuildingBlocks>
      <ContentDefinitions>
        <ContentDefinition Id="api.signuporsignin">
          <DataUri>urn:com:microsoft:aad:b2c:elements:unifiedssp:1.1.0</DataUri>
        </ContentDefinition>
      </ContentDefinitions>
    </BuildingBlocks>
    

De metagegevens toevoegen aan het zelf-asserted technische profiel

Als u het KMSI-selectievakje wilt toevoegen aan de registratie- en aanmeldingspagina, stelt u de setting.enableRememberMe metagegevens in op true. Overschrijf de technische profielen selfAsserted-LocalAccountSignin-Email in het extensiebestand.

  1. Ga naar het element ClaimsProviders. Als het element niet aanwezig is, voegt u het toe.

  2. Voeg de volgende claimprovider toe aan het element ClaimsProviders:

    <ClaimsProvider>
      <DisplayName>Local Account</DisplayName>
      <TechnicalProfiles>
        <TechnicalProfile Id="SelfAsserted-LocalAccountSignin-Email">
          <Metadata>
            <Item Key="setting.enableRememberMe">True</Item>
          </Metadata>
        </TechnicalProfile>
      </TechnicalProfiles>
    </ClaimsProvider>
    
  3. Sla het extensiebestand op.

Een relying party-bestand configureren

Werk het RP-bestand (Relying Party) bij waarmee het gebruikerstraject wordt gestart dat u hebt gemaakt. Met keepAliveInDays de parameter kunt u configureren hoe lang de kmSI-sessiecooky (keep me sign in) moet blijven bestaan. Als u bijvoorbeeld de waarde instelt op 30, blijft de KMSI-sessiecooky 30 dagen bestaan. Het bereik voor de waarde ligt tussen 1 en 90 dagen. Als u de waarde instelt op 0, wordt kmSI-functionaliteit uitgeschakeld.

  1. Open het aangepaste beleidsbestand. Bijvoorbeeld SignUpOrSignin.xml.

  2. Als dit nog niet bestaat, voegt u een <UserJourneyBehaviors> onderliggend knooppunt toe aan het knooppunt <RelyingParty>. Het moet zich direct na <DefaultUserJourney ReferenceId="User journey Id" />bevinden, bijvoorbeeld: <DefaultUserJourney ReferenceId="SignUpOrSignIn" />.

  3. Voeg het volgende knooppunt toe als onderliggend element van het bestaande element <UserJourneyBehaviors>.

    <UserJourneyBehaviors>
      <SingleSignOn Scope="Tenant" KeepAliveInDays="30" />
      <SessionExpiryType>Absolute</SessionExpiryType>
      <SessionExpiryInSeconds>1200</SessionExpiryInSeconds>
    </UserJourneyBehaviors>
    

U stelt zowel KeepAliveInDays als SessionExpiryInSeconds zo in dat tijdens een aanmelding, als een gebruiker KMSI inschakelt, de KeepAliveInDays wordt gebruikt om de cookies in te stellen, anders wordt de waarde gebruikt die is opgegeven in de parameter SessionExpiryInSeconds. U wordt aangeraden de waarde van SessionExpiryInSeconds in te stellen op een korte periode (1200 seconden), terwijl de waarde van KeepAliveInDays kan worden ingesteld op een relatief lange periode (30 dagen), zoals wordt weergegeven in het volgende voorbeeld:

<RelyingParty>
  <DefaultUserJourney ReferenceId="SignUpOrSignIn" />
  <UserJourneyBehaviors>
    <SingleSignOn Scope="Tenant" KeepAliveInDays="30" />
    <SessionExpiryType>Absolute</SessionExpiryType>
    <SessionExpiryInSeconds>1200</SessionExpiryInSeconds>
  </UserJourneyBehaviors>
  <TechnicalProfile Id="PolicyProfile">
    <DisplayName>PolicyProfile</DisplayName>
    <Protocol Name="OpenIdConnect" />
    <OutputClaims>
      <OutputClaim ClaimTypeReferenceId="displayName" />
      <OutputClaim ClaimTypeReferenceId="givenName" />
      <OutputClaim ClaimTypeReferenceId="surname" />
      <OutputClaim ClaimTypeReferenceId="email" />
      <OutputClaim ClaimTypeReferenceId="objectId" PartnerClaimType="sub"/>
      <OutputClaim ClaimTypeReferenceId="identityProvider" />
      <OutputClaim ClaimTypeReferenceId="tenantId" AlwaysUseDefaultValue="true" DefaultValue="{Policy:TenantObjectId}" />
    </OutputClaims>
    <SubjectNamingInfo ClaimType="sub" />
  </TechnicalProfile>
</RelyingParty>

Afmelden

Wanneer u de gebruiker wilt afmelden bij de toepassing, is het niet voldoende om de cookies van de toepassing te wissen of de sessie met de gebruiker op een andere manier te beëindigen. U moet de gebruiker omleiden naar Azure AD B2C om u af te melden. Anders kan de gebruiker mogelijk opnieuw verifiëren bij uw toepassingen zonder hun referenties opnieuw in te voeren.

Na een afmeldingsaanvraag, Azure AD B2C:

  1. Ongeldige sessie op basis van cookies in Azure AD B2C.
  2. Pogingen om zich af te melden bij federatieve id-providers.
  1. Ongeldige sessie op basis van cookies in Azure AD B2C.
  2. Pogingen om zich af te melden bij federatieve id-providers:
    • OpenId Verbinding maken: als het bekende configuratie-eindpunt van de id-provider een end_session_endpoint locatie aangeeft. De afmeldingsaanvraag geeft de id_token_hint parameter niet door. Als de federatieve id-provider deze parameter vereist, mislukt de afmeldingsaanvraag.
    • OAuth2: als de metagegevens van de id-provider de end_session_endpoint locatie bevatten.
    • SAML: als de metagegevens van de id-provider de SingleLogoutService locatie bevatten.
  3. U kunt zich desgewenst afmelden bij andere toepassingen. Zie de sectie Eenmalige afmelding voor meer informatie.

Notitie

U kunt afmelden bij federatieve id-providers uitschakelen door de metagegevens SingleLogoutEnabled van het technische profiel van de id-provider in te stellen op false.

De afmelding wist de status van eenmalige aanmelding van de gebruiker met Azure AD B2C, maar de gebruiker wordt mogelijk niet afgemeld bij de sessie van de sociale id-provider. Als de gebruiker dezelfde id-provider selecteert tijdens een volgende aanmelding, kan deze opnieuw verifiëren zonder hun referenties in te voeren. Als een gebruiker zich wil afmelden bij de toepassing, betekent dit niet per se dat ze zich willen afmelden bij hun Facebook-account. Als er echter lokale accounts worden gebruikt, wordt de sessie van de gebruiker correct beëindigd.

Eenmalige afmelding

Wanneer u de gebruiker omleidt naar het afmeldingseindpunt van Azure AD B2C (voor zowel OAuth2 als OpenID Verbinding maken) of een LogoutRequest (voor SAML) verzendt, wist Azure AD B2C de sessie van de gebruiker uit de browser. De gebruiker kan echter nog steeds zijn aangemeld bij andere toepassingen die Azure AD B2C gebruiken voor verificatie. Als u de gebruiker wilt afmelden bij alle toepassingen, die een actieve sessie hebben, ondersteunt Azure AD B2C eenmalige afmelding, ook wel bekend als Single Log-Out (SLO).

Tijdens het afmelden verzendt Azure AD B2C tegelijkertijd een HTTP-aanvraag naar de geregistreerde afmeldings-URL van alle toepassingen waarmee de gebruiker momenteel is aangemeld.

Uw aangepaste beleid configureren

Ter ondersteuning van eenmalige afmelding moeten de technische profielen van de tokenverlener voor zowel JWT als SAML opgeven:

  • De protocolnaam, zoals <Protocol Name="OpenIdConnect" />
  • De verwijzing naar het sessie technische profiel, zoals UseTechnicalProfileForSessionManagement ReferenceId="SM-jwt-issuer" />.

In het volgende voorbeeld ziet u de JWT- en SAML-tokenverleners met eenmalige afmelding:

<ClaimsProvider>
  <DisplayName>Local Account SignIn</DisplayName>
  <TechnicalProfiles>
    <!-- JWT Token Issuer -->
    <TechnicalProfile Id="JwtIssuer">
      <DisplayName>JWT token Issuer</DisplayName>
      <Protocol Name="OpenIdConnect" />
      <OutputTokenFormat>JWT</OutputTokenFormat>
      ...    
      <UseTechnicalProfileForSessionManagement ReferenceId="SM-jwt-issuer" />
    </TechnicalProfile>

    <!-- Session management technical profile for OIDC based tokens -->
    <TechnicalProfile Id="SM-jwt-issuer">
      <DisplayName>Session Management Provider</DisplayName>
      <Protocol Name="Proprietary" Handler="Web.TPEngine.SSO.OAuthSSOSessionProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
    </TechnicalProfile>

    <!--SAML token issuer-->
    <TechnicalProfile Id="Saml2AssertionIssuer">
      <DisplayName>SAML token issuer</DisplayName>
      <Protocol Name="SAML2" />
      <OutputTokenFormat>SAML2</OutputTokenFormat>
      ...
      <UseTechnicalProfileForSessionManagement ReferenceId="SM-Saml-issuer" />
    </TechnicalProfile>

    <!-- Session management technical profile for SAML based tokens -->
    <TechnicalProfile Id="SM-Saml-issuer">
      <DisplayName>Session Management Provider</DisplayName>
      <Protocol Name="Proprietary" Handler="Web.TPEngine.SSO.SamlSSOSessionProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
    </TechnicalProfile>
  </TechnicalProfiles>
</ClaimsProvider>

Uw toepassing configureren

Als u wilt dat een toepassing deelneemt aan eenmalige afmelding:

Aanvragen voor eenmalige afmelding verwerken

Wanneer Azure AD B2C de afmeldingsaanvraag ontvangt, wordt een HTML-framework voor front-channel gebruikt om een HTTP-aanvraag te verzenden naar de geregistreerde afmeldings-URL van elke deelnemende toepassing waarmee de gebruiker momenteel is aangemeld. De toepassing waarmee de afmeldingsaanvraag wordt geactiveerd, ontvangt dit afmeldingsbericht. Uw toepassingen moeten reageren op de afmeldingsaanvraag door de toepassingssessie te wissen die de gebruiker identificeert.

  • Voor OpenID-Verbinding maken- en OAuth2-toepassingen verzendt Azure AD B2C een HTTP GET-aanvraag naar de geregistreerde afmeldings-URL.
  • Voor SAML-toepassingen verzendt Azure AD B2C een SAML-afmeldingsaanvraag naar de geregistreerde afmeldings-URL.

Wanneer Azure AD B2C alle toepassingen over de afmelding op de hoogte stelt, wordt een van de volgende handelingen uitgevoerd:

  • Voor OpenID-Verbinding maken- of OAuth2-toepassingen wordt de gebruiker omgeleid naar de aangevraagde post_logout_redirect_uri parameter, inclusief de (optionele) state parameter die is opgegeven in de eerste aanvraag. Bijvoorbeeld https://contoso.com/logout?state=foo.
  • Voor SAML-toepassingen wordt een SAML-afmeldingsantwoord via HTTP POST verzonden naar de toepassing die de afmeldingsaanvraag in eerste instantie heeft verzonden.

Uw afmeldingsomleiding beveiligen

Na afmelding wordt de gebruiker omgeleid naar de URI die is opgegeven in de post_logout_redirect_uri parameter, ongeacht de antwoord-URL's die u voor de toepassing opgeeft. Als er echter een geldige waarde id_token_hint wordt doorgegeven en het id-token vereisen in afmeldingsaanvragen is ingeschakeld, controleert Azure AD B2C of de waarde post_logout_redirect_uri overeenkomt met een van de geconfigureerde omleidings-URI's van de toepassing voordat de omleiding wordt uitgevoerd. Als er geen overeenkomende antwoord-URL is geconfigureerd voor de toepassing, wordt er een foutbericht weergegeven en wordt de gebruiker niet omgeleid.

Een id-token vereisen in afmeldingsaanvragen:

  1. Meld u aan bij de Azure-portal.
  2. Als u toegang hebt tot meerdere tenants, selecteert u het pictogram Instellingen in het bovenste menu om over te schakelen naar uw Azure AD B2C-tenant in het menu Mappen en abonnementen.
  3. Kies Alle services linksboven in de Azure Portal, zoek Azure AD B2C en selecteer deze.
  4. Selecteer de Gebruikersstromen.
  5. Open de gebruikersstroom die u eerder hebt gemaakt.
  6. Selecteer Eigenschappen.
  7. Schakel het id-token vereisen in afmeldingsaanvragen in.

Als u een id-token in afmeldingsaanvragen wilt vereisen, voegt u een UserJourneyBehaviors-element toe in het RelyingParty-element . Stel vervolgens de EnforceIdTokenHintOnLogout van het element SingleSignOn in op true. Bekijk de livedemo voor meer informatie. Uw element UserJourneyBehaviors moet eruitzien zoals dit voorbeeld:

<UserJourneyBehaviors>
  <SingleSignOn Scope="Tenant" EnforceIdTokenHintOnLogout="true"/>
</UserJourneyBehaviors>

Afmeldings-URL voor uw toepassing configureren:

  1. Selecteer App-registraties en selecteer vervolgens uw toepassing.
  2. Selecteer Verificatie.
  3. Typ uw omleidings-URI voor afmelding in het tekstvak Afmeldings-URL en selecteer Opslaan.

Volgende stappen