Delen via


Registreren en aanmelden met een Google-account instellen met behulp van Azure Active Directory B2C

Belangrijk

Vanaf 1 mei 2025 is Azure AD B2C niet meer beschikbaar voor nieuwe klanten. Meer informatie vindt u in onze veelgestelde vragen.

Voordat u begint, gebruikt u de selector Een beleidstype kiezen boven aan deze pagina 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.

Belangrijk

Vanaf 30 september 2021 wordt de aanmeldingsondersteuning voor webweergave door Google afgeschaft. Als uw apps gebruikers verifiëren met een ingesloten webweergave en u Google-federatie gebruikt met Azure AD B2C, kunnen Google Gmail-gebruikers zich niet verifiëren. Meer informatie.

Opmerking

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.

Vereiste voorwaarden

Een Google-toepassing maken

Als u aanmelding wilt inschakelen voor gebruikers met een Google-account in Azure Active Directory B2C (Azure AD B2C), moet u een toepassing maken in de Google-ontwikkelaarsconsole. Zie OAuth 2.0 instellen voor meer informatie. Als u nog geen Google-account hebt, kunt u zich aanmelden bij https://accounts.google.com/signup.

  1. Meld u aan bij de Google-ontwikkelaarsconsole met de referenties van uw Google-account.
  2. Selecteer in de linkerbovenhoek van de pagina de lijst met projecten en selecteer vervolgens Nieuw project.
  3. Voer een projectnaam in en selecteer Maken.
  4. Zorg ervoor dat u het nieuwe project gebruikt door de vervolgkeuzelijst van het project in de linkerbovenhoek van het scherm te selecteren. Selecteer uw project op naam en selecteer vervolgens Openen.
  5. Selecteer API's en services in het linkermenu en vervolgens het scherm voor OAuth-toestemming. Selecteer Extern en selecteer vervolgens Maken.
    1. Voer een naam in voor uw toepassing.
    2. Selecteer een e-mailadres voor gebruikersondersteuning.
    3. Voer in de sectie App-domein een koppeling in naar de startpagina van uw toepassing, een koppeling naar het privacybeleid van uw toepassing en een koppeling naar uw servicevoorwaarden voor uw toepassing.
    4. Voer in de sectie Geautoriseerde domeinenb2clogin.com in.
    5. Voer in de sectie Contactgegevens voor ontwikkelaars door komma's gescheiden e-mailberichten voor Google in om u op de hoogte te stellen van eventuele wijzigingen in uw project.
    6. Selecteer Opslaan.
  6. Selecteer Referenties in het linkermenu en selecteer vervolgens Referenties maken>OAuth-client-id.
  7. Selecteer onder Toepassingstype de optie Webtoepassing.
    1. Voer een naam in voor uw toepassing.
    2. Voer voor de geautoriseerde JavaScript-oorsprongen het volgende in https://your-tenant-name.b2clogin.com. Als u een aangepast domein gebruikt, voert u het volgende in https://your-domain-name.
    3. Voer voor de geautoriseerde omleidings-URI's het volgende in https://your-tenant-name.b2clogin.com/your-tenant-name.onmicrosoft.com/oauth2/authresp. Als u een aangepast domein gebruikt, voert u het volgende in https://your-domain-name/your-tenant-name.onmicrosoft.com/oauth2/authresp. Vervang your-domain-name door uw aangepaste domein en your-tenant-name door de naam van uw tenant. Gebruik alle kleine letters bij het invoeren van uw tenantnaam, zelfs als de tenant is gedefinieerd met hoofdletters in Azure AD B2C. Vervang in alle gevallen your-tenant-name met het subdomein Directory (tenant). Als uw primaire tenantdomein bijvoorbeeld is contoso.onmicrosoft.com, gebruikt u contoso. Als u uw tenantnaam niet hebt, leer hoe u de gegevens van uw tenant kunt lezen.
  8. Klik op Creëren.
  9. Kopieer de waarden van client-id en clientgeheim. U hebt beide nodig om Google als id-provider in uw tenant te configureren. Clientgeheim is een belangrijke beveiligingsreferentie.

Google configureren als id-provider

  1. Meld u aan bij Azure Portal met een account met ten minste beheerdersbevoegdheden voor externe id-providers .
  2. Als u toegang hebt tot meerdere tenants, selecteert u het pictogram Instellingen in het hoofdmenu om over te schakelen naar uw Azure AD B2C-tenant vanuit het menu Mappen + abonnementen.
  3. Kies Alle services in de linkerbovenhoek van Azure Portal, zoek en selecteer Azure AD B2C.
  4. Selecteer Identiteitsproviders en selecteer Google.
  5. Voer een naam in. Bijvoorbeeld Google.
  6. Voer voor de client-id de client-id in van de Google-toepassing die u eerder hebt gemaakt.
  7. Voer voor het clientgeheim het clientgeheim in dat u hebt vastgelegd.
  8. Selecteer Opslaan.

Google-id-provider toevoegen aan een gebruikersstroom

Op dit moment is de Google-id-provider ingesteld, maar deze is nog niet beschikbaar op een van de aanmeldingspagina's. De Google-id-provider toevoegen aan een gebruikersstroom:

  1. Selecteer gebruikersstromen in uw Azure AD B2C-tenant.
  2. Selecteer de gebruikersstroom waaraan u de Google-identiteitsprovider wilt toevoegen.
  3. Selecteer Google 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 Voer gebruikersstroom uit.
  8. Selecteer Google op de registratie- of aanmeldingspagina om u aan te melden met een Google-account.

Als het aanmeldingsproces is geslaagd, wordt uw browser omgeleid naar https://jwt.ms. Op de pagina wordt de inhoud van het token weergegeven dat Azure AD B2C retourneert.

Een beleidssleutel maken

U moet het clientgeheim opslaan dat u eerder hebt vastgelegd in uw Azure AD B2C-tenant.

  1. Meld u aan bij het Azure-portaal.
  2. Als u toegang hebt tot meerdere tenants, selecteert u het pictogram Instellingen in het hoofdmenu om over te schakelen naar uw Azure AD B2C-tenant vanuit het menu Mappen + abonnementen.
  3. Kies Alle services in de linkerbovenhoek van de Azure Portal en zoek naar en selecteer Azure AD B2C.
  4. Selecteer Identity Experience Framework op de pagina Overzicht.
  5. Selecteer Beleidssleutels en selecteer vervolgens Toevoegen.
  6. Kies voor Opties de optie Manual.
  7. Voer een naam in voor de beleidssleutel. Bijvoorbeeld: GoogleSecret. Het voorvoegsel B2C_1A_ wordt automatisch toegevoegd aan de naam van uw sleutel.
  8. Voer in geheim uw clientgeheim in dat u eerder hebt opgenomen.
  9. Voor sleutelgebruik selecteert u Signature.
  10. Klik op Creëren.

Google configureren als id-provider

Als u wilt dat gebruikers zich kunnen aanmelden met een Google-account, moet u het account 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 een Google-account definiëren als claimprovider door dit toe te voegen aan het element ClaimsProviders in het extensiebestand van uw beleid.

  1. Open het bestandTrustFrameworkExtensions.xml .

  2. Zoek het element ClaimsProviders . Als deze niet bestaat, voegt u deze toe onder het hoofdelement.

  3. Voeg als volgt een nieuwe ClaimsProvider toe:

    <ClaimsProvider>
      <Domain>google.com</Domain>
      <DisplayName>Google</DisplayName>
      <TechnicalProfiles>
        <TechnicalProfile Id="Google-OAuth2">
          <DisplayName>Google</DisplayName>
          <Protocol Name="OAuth2" />
          <Metadata>
            <Item Key="ProviderName">google</Item>
            <Item Key="authorization_endpoint">https://accounts.google.com/o/oauth2/auth</Item>
            <Item Key="AccessTokenEndpoint">https://accounts.google.com/o/oauth2/token</Item>
            <Item Key="ClaimsEndpoint">https://www.googleapis.com/oauth2/v1/userinfo</Item>
            <Item Key="scope">email profile</Item>
            <Item Key="HttpBinding">POST</Item>
            <Item Key="UsePolicyInRedirectUri">false</Item>
            <Item Key="client_id">Your Google application ID</Item>
          </Metadata>
          <CryptographicKeys>
            <Key Id="client_secret" StorageReferenceId="B2C_1A_GoogleSecret" />
          </CryptographicKeys>
          <OutputClaims>
            <OutputClaim ClaimTypeReferenceId="issuerUserId" PartnerClaimType="id" />
            <OutputClaim ClaimTypeReferenceId="email" PartnerClaimType="email" />
            <OutputClaim ClaimTypeReferenceId="givenName" PartnerClaimType="given_name" />
            <OutputClaim ClaimTypeReferenceId="surname" PartnerClaimType="family_name" />
            <OutputClaim ClaimTypeReferenceId="displayName" PartnerClaimType="name" />
            <OutputClaim ClaimTypeReferenceId="identityProvider" DefaultValue="google.com" />
            <OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="socialIdpAuthentication" />
          </OutputClaims>
          <OutputClaimsTransformations>
            <OutputClaimsTransformation ReferenceId="CreateRandomUPNUserName" />
            <OutputClaimsTransformation ReferenceId="CreateUserPrincipalName" />
            <OutputClaimsTransformation ReferenceId="CreateAlternativeSecurityId" />
            <OutputClaimsTransformation ReferenceId="CreateSubjectClaimFromAlternativeSecurityId" />
          </OutputClaimsTransformations>
          <UseTechnicalProfileForSessionManagement ReferenceId="SM-SocialLogin" />
        </TechnicalProfile>
      </TechnicalProfiles>
    </ClaimsProvider>
    
  4. Stel client_id in op de toepassings-id van de toepassingregistratie.

  5. Sla het bestand op.

Een gebruikerstraject toevoegen

Op dit moment is de id-provider ingesteld, maar deze is nog niet beschikbaar op een van de aanmeldingspagina's. Als u geen eigen aangepast gebruikerstraject hebt, maakt u een duplicaat van een bestaand sjabloongebruikerstraject. Ga anders verder met de volgende stap.

  1. Open het bestandTrustFrameworkBase.xml vanuit het starterspakket.
  2. Zoek en kopieer de volledige inhoud van het UserJourney-element waarin Id="SignUpOrSignIn" voorkomt.
  3. Open de TrustFrameworkExtensions.xml en zoek het element UserJourneys . Als het element niet bestaat, voegt u er een toe.
  4. Plak de volledige inhoud van het UserJourney-element dat u hebt gekopieerd als een kind van het element UserJourneys .
  5. Wijzig de naam van de ID van de gebruikersreis. Bijvoorbeeld: Id="CustomSignUpSignIn".

De id-provider toevoegen aan een gebruikerstraject

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

  1. Zoek het orkestratiestap-element dat Type="CombinedSignInAndSignUp" of Type="ClaimsProviderSelection" bevat in de gebruiksreis. Dit is meestal de eerste orkestratiestap. 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 aan de gebruiker gepresenteerde aanmeldingsknoppen. Voeg een XML-element ClaimsProviderSelection toe. Stel de waarde van TargetClaimsExchangeId in op een vriendelijke naam.

  2. Voeg in de volgende orkestratiestap een ClaimsExchange-element 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="GoogleExchange" />
  </ClaimsProviderSelections>
  ...
</OrchestrationStep>

<OrchestrationStep Order="2" Type="ClaimsExchange">
  ...
  <ClaimsExchanges>
    <ClaimsExchange Id="GoogleExchange" TechnicalProfileReferenceId="Google-OAuth2" />
  </ClaimsExchanges>
</OrchestrationStep>

Het vertrouwende partij-beleid configureren

Het relying party-beleid, bijvoorbeeld SignUpSignIn.xml, geeft het gebruikerstraject op dat Door Azure AD B2C wordt uitgevoerd. Zoek het element DefaultUserJourney in relying party. Werk de ReferenceId bij zodat deze overeenkomt met de ID van de gebruikersreis, waarin u de identity provider hebt toegevoegd.

In het volgende voorbeeld is de CustomSignUpSignIn voor het gebruikerstraject ingesteld opCustomSignUpSignIn:

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

Het aangepaste beleid uploaden

  1. Meld u aan bij het Azure-portaal.
  2. Selecteer het pictogram Directory + Abonnement in de portalwerkbalk 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 Beleidde optie Identity Experience Framework.
  5. Selecteer Aangepast beleid uploaden en upload vervolgens de twee beleidsbestanden die u hebt gewijzigd, in de volgende volgorde: het extensiebeleid, 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 Google op de registratie- of aanmeldingspagina om u aan te melden met een Google-account.

Als het aanmeldingsproces is geslaagd, wordt uw browser omgeleid naar https://jwt.ms, waarin de inhoud van het token wordt weergegeven dat wordt geretourneerd door Azure AD B2C.

Volgende stappen