Share via


Registreer de aanmelding en meld u aan met een Azure AD B2C-account van een andere Azure AD B2C-tenant

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.

Notitie

In Azure Active Directory B2C is aangepast beleid voornamelijk bedoeld om met complexe scenario's om te gaan. Voor de meeste scenario's wordt aangeraden ingebouwde gebruikersstromen te gebruiken. Als u dit nog niet hebt gedaan, vindt u meer informatie over aangepast beleid in het starterspakket in Aan de slag met aangepaste beleidsregels in Active Directory B2C.

Overzicht

Dit artikel beschrijft hoe u een federatie instelt met een andere Azure AD B2C-tenant. Wanneer uw toepassingen worden beveiligd met uw Azure AD B2C kunnen gebruikers van andere Azure AD B2C's zich aanmelden met hun bestaande accounts. In het volgende diagram kunnen gebruikers zich aanmelden bij een toepassing die wordt beveiligd door Azure AD B2C van Contoso, met een account dat wordt beheerd door de Azure AD B2C-tenant van Fabrikam. In dit geval moet het gebruikersaccount aanwezig zijn in de tenant van Fabrikam voordat een toepassing die wordt beveiligd door Azure AD B2C van Contoso, zich kan proberen aan te melden.

Azure AD B2C federation with another Azure AD B2C tenant

Vereisten

Het uitgeversdomein van de toepassing verifiëren

Vanaf november 2020 worden nieuwe toepassingsregistraties weergegeven als niet-geverifieerd in de vraag naar gebruikerstoestemming, tenzij het uitgeversdomein van de toepassing is geverifieerden de identiteit van het bedrijf is geverifieerd met Microsoft Partner Network en gekoppeld aan de toepassing. (Meer informatie over deze wijziging.) Houd er rekening mee dat voor Azure AD B2C-gebruikersstromen het domein van de uitgever alleen wordt weergegeven wanneer u een Microsoft-account of een andere Microsoft Entra-tenant als id-provider gebruikt. Ga als volgt te werk om te voldoen aan deze nieuwe vereisten:

  1. Verifieer uw bedrijfsidentiteit met behulp van uw MPN-account (Microsoft Partner Network). In dit proces wordt informatie over uw bedrijf en de eerste contactpersoon van uw bedrijf geverifieerd.
  2. Voltooi het verificatieproces van de uitgever om uw MPN-account te koppelen aan uw app-registratie met behulp van een van de volgende opties:

Een Azure AD B2C-webtoepassing maken

Als u aanmelding wilt inschakelen voor gebruikers met een account van een andere Azure AD B2C-tenant (bijvoorbeeld Fabrikam), in uw Azure AD B2C (bijvoorbeeld Contoso):

  1. Maak een gebruikersstroom of een aangepast beleid.
  2. Maak vervolgens een toepassing in de Azure AD B2C, zoals in deze sectie wordt beschreven.

Een toepassing maken.

  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. Zoek en selecteer Azure AD B2C in de Azure-portal.

  4. Selecteer App-registraties en selecteer vervolgens Nieuwe registratie.

  5. Voer een naam in voor de toepassing. Bijvoorbeeld: ContosoApp.

  6. Selecteer onder Ondersteunde accounttypen de optie Accounts in een identiteitsprovider of organisatiemap (voor het verifiëren van gebruikers met gebruikersstromen).

  7. Selecteer onder Omleidings-URIWeb en voer vervolgens de volgende URL in kleine letters in, waarbij your-B2C-tenant-name wordt vervangen door de naam van uw Azure AD B2C-tenant (bijvoorbeeld Contoso).

    https://your-B2C-tenant-name.b2clogin.com/your-B2C-tenant-name.onmicrosoft.com/oauth2/authresp
    

    Bijvoorbeeld https://contoso.b2clogin.com/contoso.onmicrosoft.com/oauth2/authresp.

    Als u een aangepast domein gebruikt, voert u https://your-domain-name/your-tenant-name.onmicrosoft.com/oauth2/authresp in. Vervang your-domain-name door uw aangepaste domein en your-tenant-name door de naam van uw tenant.

  8. Selecteer in Machtigingen het selectievakje Beheerdersgoedkeuring verlenen aan machtigingen van OpenID en offline_access.

  9. Selecteer Registreren.

  10. Selecteer op de pagina Azure AD B2C - App-registraties de toepassing die u hebt gemaakt, bijvoorbeeld ContosoApp.

  11. Noteer de Toepassings-id (client) die wordt weergegeven op de pagina Overzicht van de toepassing. U hebt dit nodig wanneer u de id-provider configureert in de volgende sectie.

  12. Selecteer in het menu links onder Beheren de optie Certificaten en geheimen.

  13. Selecteer Nieuw clientgeheim.

  14. Voer een beschrijving voor het clientgeheim in het vak Beschrijving in. Bijvoorbeeld clientsecret1.

  15. Selecteer onder Verloopt een duur waarvoor het geheim geldig is en selecteer vervolgens Toevoegen.

  16. Noteer de Waarde van het geheim. U hebt dit nodig wanneer u de id-provider configureert in de volgende sectie.

Azure AD B2C configureren als id-provider

  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 Id-providers en selecteer vervolgens Nieuwe OpenID Connect-provider.

  5. Voer bij Naam een naam in. Voer bijvoorbeeld Fabrikam in.

  6. Voor URL voor metagegevens voert u de volgende URL in, waarbij {tenant} wordt vervangen door de domeinnaam van uw Azure AD B2C-tenant (bijvoorbeeld Fabrikam). Vervang de {policy} door u de beleidsnaam die u configureert in de andere tenant:

    https://{tenant}.b2clogin.com/{tenant}.onmicrosoft.com/{policy}/v2.0/.well-known/openid-configuration
    

    Bijvoorbeeld https://fabrikam.b2clogin.com/fabrikam.onmicrosoft.com/B2C_1_susi/v2.0/.well-known/openid-configuration.

  7. Voor Client-id voert u de toepassings-id in die u eerder hebt genoteerd.

  8. Voor Clientgeheim voert u het clientgeheim in dat u eerder hebt genoteerd.

  9. Voer de openid in voor Bereik.

  10. Behoud de standaardwaarden voor Antwoordtype en Antwoordmodus.

  11. (Optioneel) Voer voor de domeinhint de domeinnaam in die u wilt gebruiken voor de directe aanmelding. Bijvoorbeeld fabrikam.com.

  12. Selecteer onder Claimstoewijzing voor id-provider de volgende claims:

    • Gebruikers-id: sub
    • Weergavenaam: name
    • Voornaam: given_name
    • Achternaam: family_name
    • E-mail: e-mail
  13. Selecteer Opslaan.

Azure AD B2C-id-provider toevoegen aan een gebruikersstroom

  1. Selecteer Gebruikersstromen in uw Azure AD B2C-tenant.
  2. Klik op de gebruikersstroom die u wilt toevoegen aan de Azure AD B2C-id-provider.
  3. Selecteer Fabrikam onder de Sociale id-providers.
  4. Selecteer Opslaan.
  5. Selecteer Gebruikersstroom uitvoeren om uw beleid te testen.
  6. Selecteer voor Toepassing de webtoepassing met de naam testapp1 die u eerder hebt geregistreerd. De antwoord-URL moet https://jwt.ms weergeven.
  7. Klik op de knop Gebruikersstroom uitvoeren.
  8. Selecteer Fabrikam op de registratie- of aanmeldingspagina om u aan te melden met de andere Azure AD B2C-tenant.

Als het aanmeldingsproces is voltooid, wordt uw browser omgeleid naar https://jwt.ms, waar de inhoud van het door Azure AD B2C geretourneerde token wordt weergegeven.

Een beleidssleutel maken

U moet de toepassingssleutel opslaan die u eerder hebt gemaakt in uw Azure AD B2C-tenant.

  1. 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.
  2. Kies Alle services linksboven in de Azure Portal, zoek Azure AD B2C en selecteer deze.
  3. Selecteer onder Beleid de optie Identity Experience Framework.
  4. Selecteer Beleidssleutels en vervolgens Toevoegen.
  5. Voor Opties kiest u Manual.
  6. Voer een naam in voor de beleidssleutel. Bijvoorbeeld FabrikamAppSecret. Het voorvoegsel B2C_1A_ wordt automatisch toegevoegd aan de naam van uw sleutel wanneer deze wordt gemaakt, zodat de verwijzing in de XML in de volgende sectie moet worden B2C_1A_FabrikamAppSecret.
  7. Voer in Geheim het clientgeheim in dat u eerder hebt genoteerd.
  8. Selecteer voor Sleutelgebruik de optie Signature.
  9. Selecteer Maken.

Azure AD B2C configureren als id-provider

Als u wilt dat gebruikers zich kunnen aanmelden met een account van een andere Azure AD B2C-tenant (Fabrikam), moet u de andere Azure AD B2C definiëren als een claimprovider waarmee Azure AD B2C kan communiceren via een eindpunt. Het eindpunt biedt een set claims die worden gebruikt door Azure AD B2C om te controleren of een specifieke gebruiker is geverifieerd.

U kunt Azure AD B2C definiëren als een claimprovider door Azure AD B2C toe te voegen aan het element ClaimsProvider in het uitbreidingsbestand van uw beleid.

  1. Open het bestand TrustframeworkExtensions.xml.

  2. Ga naar het element ClaimsProviders. Als dit niet voorkomt, voegt u het toe onder het hoofdelement.

  3. Voeg als volgt een nieuwe ClaimsProvider toe:

    <ClaimsProvider>
      <Domain>fabrikam.com</Domain>
      <DisplayName>Federation with Fabrikam tenant</DisplayName>
      <TechnicalProfiles>
        <TechnicalProfile Id="AzureADB2CFabrikam-OpenIdConnect">
        <DisplayName>Fabrikam</DisplayName>
        <Protocol Name="OpenIdConnect"/>
        <Metadata>
          <!-- Update the Client ID below to the Application ID -->
          <Item Key="client_id">00000000-0000-0000-0000-000000000000</Item>
          <!-- Update the metadata URL with the other Azure AD B2C tenant name and policy name -->
          <Item Key="METADATA">https://{tenant}.b2clogin.com/{tenant}.onmicrosoft.com/{policy}/v2.0/.well-known/openid-configuration</Item>
          <Item Key="UsePolicyInRedirectUri">false</Item>
          <Item Key="response_types">code</Item>
          <Item Key="scope">openid</Item>
          <Item Key="response_mode">form_post</Item>
          <Item Key="HttpBinding">POST</Item>
        </Metadata>
        <CryptographicKeys>
          <Key Id="client_secret" StorageReferenceId="B2C_1A_FabrikamAppSecret"/>
        </CryptographicKeys>
        <OutputClaims>
          <OutputClaim ClaimTypeReferenceId="issuerUserId" PartnerClaimType="sub" />
          <OutputClaim ClaimTypeReferenceId="givenName" PartnerClaimType="given_name" />
          <OutputClaim ClaimTypeReferenceId="surname" PartnerClaimType="family_name" />
          <OutputClaim ClaimTypeReferenceId="displayName" PartnerClaimType="name" />
          <OutputClaim ClaimTypeReferenceId="email" PartnerClaimType="email" />
          <OutputClaim ClaimTypeReferenceId="identityProvider" PartnerClaimType="iss"  />
          <OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="socialIdpAuthentication" AlwaysUseDefaultValue="true" />
          <OutputClaim ClaimTypeReferenceId="otherMails" PartnerClaimType="emails"/>    
        </OutputClaims>
        <OutputClaimsTransformations>
          <OutputClaimsTransformation ReferenceId="CreateRandomUPNUserName" />
          <OutputClaimsTransformation ReferenceId="CreateUserPrincipalName" />
          <OutputClaimsTransformation ReferenceId="CreateAlternativeSecurityId" />
        </OutputClaimsTransformations>
        <UseTechnicalProfileForSessionManagement ReferenceId="SM-SocialLogin"/>
      </TechnicalProfile>
     </TechnicalProfiles>
    </ClaimsProvider>
    
  4. Werk de volgende XML-elementen bij met de relevante waarde:

    XML-element Waarde
    ClaimsProvider\Domain De domeinnaam die wordt gebruikt voor directe aanmelding. Voer de domeinnaam in die u wilt gebruiken bij de directe aanmelding. Bijvoorbeeld fabrikam.com.
    TechnicalProfile\DisplayName Deze waarde wordt weergegeven op de aanmeldingsknop op het aanmeldingsscherm. Bijvoorbeeld fabrikam.
    Metadata\client_id De toepassings-id van de id-provider. Werk de client-id bij met de toepassings-id die u eerder hebt gemaakt in de andere Azure AD B2C-tenant.
    Metadata\METADATA Een URL die verwijst naar een OpenID Connect id-provider configuratiedocument, dat ook wel een bekend OpenID-configuratie-eindpunt wordt genoemd. Voer de volgende URL in die wordt {tenant} vervangen door de domeinnaam van de andere Azure AD B2C-tenant (Fabrikam). Vervang de {tenant} door de beleidsnaam die u configureert in de andere tenant, en {policy] door de beleidsnaam: https://{tenant}.b2clogin.com/{tenant}.onmicrosoft.com/{policy}/v2.0/.well-known/openid-configuration. Bijvoorbeeld https://fabrikam.b2clogin.com/fabrikam.onmicrosoft.com/B2C_1_susi/v2.0/.well-known/openid-configuration.
    CryptographicKeys Werk de waarde van StorageReferenceId bij naar de naam van de beleidssleutel die u eerder hebt gemaakt. Bijvoorbeeld B2C_1A_FabrikamAppSecret.

Een gebruikerstraject toevoegen

Op dit punt is de id-provider ingesteld, maar is deze nog niet beschikbaar op een van de aanmeldingspagina's. Als u niet over een eigen aangepast gebruikerstraject beschikt, maakt u een duplicaat van een bestaand gebruikerstrajectsjabloon. In het andere geval gaat u verder met de volgende stap.

  1. Open het bestand TrustFrameworkBase.xml vanuit het starterspakket.
  2. Zoek en kopieer de volledige inhoud van het element UserJourney dat Id="SignUpOrSignIn" bevat.
  3. Open het bestand TrustFrameworkExtensions.xml en ga naar het element UserJourneys. Als het element niet voorkomt, voegt u het toe.
  4. Plak de volledige inhoud van het element UserJourney dat u hebt gekopieerd als een onderliggend element van het element UserJourneys.
  5. Wijzig de naam van de id van het gebruikerstraject. Bijvoorbeeld Id="CustomSignUpSignIn".

De id-provider toevoegen aan een gebruikerstraject

Nu u over een gebruikerstraject beschikt, voegt u de nieuwe id-provider toe aan het gebruikerstraject. U voegt eerst een aanmeldingsknop toe en koppelt de knop aan een actie. De actie is het technische profiel dat u eerder hebt gemaakt.

  1. Ga in het gebruikerstraject naar het element van de indelingsstap dat Type="CombinedSignInAndSignUp" of Type="ClaimsProviderSelection" bevat. Dit is doorgaans de eerste indelingsstap. Het element ClaimsProviderSelections bevat een lijst met id-providers waarmee een gebruiker zich kan aanmelden. De volgorde van de elementen bepaalt de volgorde van de aanmeldingsknoppen die aan de gebruiker worden gepresenteerd. Voeg een XML-element ClaimsProviderSelection toe. Stel de waarde van TargetClaimsExchangeId in op een beschrijvende naam.

  2. Voeg in de volgende indelingsstap een element ClaimsExchange toe. Stel de id in op de waarde van de Exchange-id van de doelclaims. Werk de waarde van TechnicalProfileReferenceId bij naar de id van het technische profiel dat u eerder hebt gemaakt.

In de volgende XML ziet u de eerste twee indelingsstappen van een gebruikerstraject met de id-provider:

<OrchestrationStep Order="1" Type="CombinedSignInAndSignUp" ContentDefinitionReferenceId="api.signuporsignin">
  <ClaimsProviderSelections>
    ...
    <ClaimsProviderSelection TargetClaimsExchangeId="AzureADB2CFabrikamExchange" />
  </ClaimsProviderSelections>
  ...
</OrchestrationStep>

<OrchestrationStep Order="2" Type="ClaimsExchange">
  ...
  <ClaimsExchanges>
    <ClaimsExchange Id="AzureADB2CFabrikamExchange" TechnicalProfileReferenceId="AzureADB2CFabrikam-OpenIdConnect" />
  </ClaimsExchanges>
</OrchestrationStep>

Het Relying Party-beleid configureren

Met het Relying Party-beleid, bijvoorbeeld SignUpSignIn.xml, wordt het gebruikerstraject opgegeven dat door Azure AD B2C wordt uitgevoerd. Ga naar het element DefaultUserJourney binnen de Relying Party. Werk de ReferenceId bij zodat deze overeenkomt met de gebruikerstraject-id, waarin u de id-provider hebt toegevoegd.

In het volgende voorbeeld is voor het CustomSignUpSignIn-gebruikerstraject de ReferenceId ingesteld op CustomSignUpSignIn:

<RelyingParty>
  <DefaultUserJourney ReferenceId="CustomSignUpSignIn" />
  ...
</RelyingParty>

Het aangepaste beleid uploaden

  1. Meld u aan bij de Azure-portal.
  2. Selecteer het pictogram Map + Abonnement in de werkbalk van de portal en selecteer vervolgens de map die uw Azure AD B2C-tenant bevat.
  3. Zoek en selecteer Azure AD B2C in de Azure-portal.
  4. Selecteer onder Beleid de optie Identity Experience Framework.
  5. Selecteer Aangepast beleid uploaden en upload vervolgens de twee beleidsbestanden die u hebt gewijzigd, in de volgende volgorde: het uitbreidingsbeleid, bijvoorbeeld TrustFrameworkExtensions.xml en vervolgens het Relying Party-beleid, zoals SignUpSignIn.xml.

Uw aangepaste beleid testen

  1. Selecteer uw Relying Party-beleid, bijvoorbeeld B2C_1A_signup_signin.
  2. Selecteer voor Toepassing een webtoepassing die u eerder hebt geregistreerd. De antwoord-URL moet https://jwt.ms weergeven.
  3. Selecteer de knop Nu uitvoeren.
  4. Selecteer Fabrikam op de registratie- of aanmeldingspagina om u aan te melden met de andere Azure AD B2C-tenant.

Als het aanmeldingsproces is voltooid, wordt uw browser omgeleid naar https://jwt.ms, waar de inhoud van het door Azure AD B2C geretourneerde token wordt weergegeven.

Volgende stappen

Meer informatie over het doorgeven van het andere Azure AD B2C-token aan uw toepassing.