Nastavení registrace a přihlášení pomocí účtu Microsoft pomocí Azure Active Directory B2C

Než začnete, pomocí selektoru Zvolit typ zásady zvolte typ zásady, kterou nastavujete. Azure Active Directory B2C nabízí dvě metody pro definování způsobu interakce uživatelů s vašimi aplikacemi: prostřednictvím předdefinovaných toků uživatelů nebo prostřednictvím plně konfigurovatelných vlastních zásad. Kroky vyžadované v tomto článku se pro každou metodu liší.

Poznámka:

V Azure Active Directory B2C jsou vlastní zásady navržené především pro řešení složitých scénářů. Ve většině scénářů doporučujeme používat integrované toky uživatelů. Pokud jste to neudělali, přečtěte si informace o úvodním balíčku vlastních zásad v tématu Začínáme s vlastními zásadami ve službě Active Directory B2C.

Předpoklady

Vytvoření aplikace účtu Microsoft

Pokud chcete povolit přihlašování pro uživatele s účtem Microsoft v Azure Active Directory B2C (Azure AD B2C), musíte vytvořit aplikaci na webu Azure Portal. Další informace najdete v tématu Registrace aplikace na platformě Microsoft Identity Platform. Pokud ještě nemáte účet Microsoft, můžete ho získat na adrese https://www.live.com/.

  1. Přihlaste se k portálu Azure.

  2. Pokud máte přístup k více tenantům, v horní nabídce vyberte ikonu Nastavení a v nabídce Adresáře a předplatná přepněte do tenanta Microsoft Entra ID.

  3. V levém horním rohu webu Azure Portal zvolte Všechny služby a pak vyhledejte a vyberte Registrace aplikací.

  4. Vyberte Nová registrace.

  5. Zadejte název aplikace. Například MSAapp1.

  6. V části Podporované typy účtů vyberte osobní účty Microsoft (např. Skype, Xbox).

    Další informace o výběru různých typů účtů najdete v tématu Rychlý start: Registrace aplikace na platformě Microsoft Identity Platform.

  7. V části Identifikátor URI přesměrování (volitelné) vyberte Web a zadejte https://your-tenant-name.b2clogin.com/your-tenant-name.onmicrosoft.com/oauth2/authresp. Pokud používáte vlastní doménu, zadejte https://your-domain-name/your-tenant-name.onmicrosoft.com/oauth2/authresp. Nahraďte your-tenant-name názvem vašeho tenanta Azure AD B2C a your-domain-name vlastní doménou.

  8. Výběr možnosti Zaregistrovat

  9. Poznamenejte si ID aplikace (klienta) zobrazené na stránce Přehled aplikace. Při konfiguraci zprostředkovatele identity v další části potřebujete ID klienta.

  10. Výběr tajných kódů certifikátů &

  11. Klikněte na Nový tajný klíč klienta.

  12. Zadejte popis tajného kódu, například heslo aplikace 1, a klikněte na přidat.

  13. Poznamenejte si heslo aplikace zobrazené ve sloupci Hodnota . Tajný klíč klienta budete potřebovat při konfiguraci zprostředkovatele identity v další části.

Konfigurace Microsoftu jako zprostředkovatele identity

  1. Přihlaste se k webu Azure Portal jako globální správce vašeho tenanta Azure AD B2C.
  2. Pokud máte přístup k více tenantům, v horní nabídce vyberte ikonu Nastavení a v nabídce Adresáře a předplatná přepněte do svého tenanta Azure AD B2C.
  3. Zvolte Všechny služby v levém horním rohu portálu Azure Portal a vyhledejte a vyberte Azure AD B2C.
  4. Vyberte zprostředkovatele identity a pak vyberte Účet Microsoft.
  5. Zadejte Název. Například MSA.
  6. Jako ID klienta zadejte ID aplikace (klienta) aplikace Microsoft Entra, kterou jste vytvořili dříve.
  7. Jako tajný klíč klienta zadejte tajný klíč klienta, který jste si poznamenali.
  8. Zvolte Uložit.

Přidání zprostředkovatele identity Microsoftu do toku uživatele

V tuto chvíli je zprostředkovatele identity Microsoftu nastavený, ale zatím není k dispozici na žádné přihlašovací stránce. Přidání zprostředkovatele identity Microsoftu do toku uživatele:

  1. V tenantovi Azure AD B2C vyberte Toky uživatelů.
  2. Klikněte na tok uživatele, který chcete přidat zprostředkovatele identity Microsoftu.
  3. V části Zprostředkovatelé sociálních identit vyberte účet Microsoft.
  4. Zvolte Uložit.
  5. Pokud chcete zásady otestovat, vyberte Spustit tok uživatele.
  6. V části Aplikace vyberte webovou aplikaci s názvem testapp1 , kterou jste předtím zaregistrovali. Adresa URL odpovědi by se měla zobrazit https://jwt.ms.
  7. Vyberte tlačítko Spustit tok uživatele.
  8. Na registrační nebo přihlašovací stránce vyberte Microsoft , abyste se přihlásili pomocí účtu Microsoft.

Pokud je proces přihlášení úspěšný, prohlížeč se přesměruje na https://jwt.msobsah tokenu vráceného službou Azure AD B2C.

Konfigurace volitelných deklarací identity

Pokud chcete získat family_name deklarace identity z given_name ID Microsoft Entra, můžete pro svou aplikaci nakonfigurovat volitelné deklarace identity v uživatelském rozhraní webu Azure Portal nebo manifestu aplikace. Další informace naleznete v tématu Jak poskytnout volitelné deklarace identity do vaší aplikace Microsoft Entra.

  1. Přihlaste se k portálu Azure. Vyhledejte a vyberte Microsoft Entra ID.
  2. V části Spravovat vyberte Registrace aplikací.
  3. Vyberte aplikaci, pro kterou chcete v seznamu nakonfigurovat volitelné deklarace identity.
  4. V části Správa vyberte konfiguraci tokenu (Preview).
  5. Vyberte Přidat volitelnou deklaraci identity.
  6. Vyberte typ tokenu, který chcete nakonfigurovat.
  7. Vyberte volitelné deklarace identity, které chcete přidat.
  8. Klikněte na tlačítko Přidat.

Vytvoření klíče zásad

Teď, když jste aplikaci vytvořili ve svém tenantovi Microsoft Entra, musíte uložit tajný klíč klienta této aplikace do tenanta Azure AD B2C.

  1. Přihlaste se k portálu Azure.
  2. Pokud máte přístup k více tenantům, v horní nabídce vyberte ikonu Nastavení a v nabídce Adresáře a předplatná přepněte do svého tenanta Azure AD B2C.
  3. V levém horním rohu webu Azure Portal zvolte Všechny služby a pak vyhledejte a vyberte Azure AD B2C.
  4. Na stránce Přehled vyberte rozhraní Identity Experience Framework.
  5. Vyberte Klíče zásad a pak vyberte Přidat.
  6. V nabídce Možnosti zvolte Manual.
  7. Zadejte název klíče zásady. Například, MSASecret. Předpona B2C_1A_ se automaticky přidá do názvu klíče.
  8. Do pole Tajný kód zadejte tajný klíč klienta, který jste si poznamenali v předchozí části.
  9. V případě použití klíče vyberte Signature.
  10. Klikněte na Vytvořit.

Konfigurace Microsoftu jako zprostředkovatele identity

Pokud chcete uživatelům umožnit přihlášení pomocí účtu Microsoft, musíte ho definovat jako zprostředkovatele deklarací identity, se kterým může Azure AD B2C komunikovat prostřednictvím koncového bodu. Koncový bod poskytuje sadu deklarací identity, které Azure AD B2C používá k ověření ověření konkrétního uživatele.

Microsoft Entra ID můžete definovat jako zprostředkovatele deklarací přidáním elementu ClaimsProvider do souboru s příponou vaší zásady.

  1. Otevřete soubor zásad TrustFrameworkExtensions.xml.

  2. Vyhledejte element ClaimsProviders . Pokud neexistuje, přidejte ho pod kořenový prvek.

  3. Přidejte nový ClaimsProvider následujícím způsobem:

    <ClaimsProvider>
      <Domain>live.com</Domain>
      <DisplayName>Microsoft Account</DisplayName>
      <TechnicalProfiles>
        <TechnicalProfile Id="MSA-MicrosoftAccount-OpenIdConnect">
          <DisplayName>Microsoft Account</DisplayName>
          <Protocol Name="OpenIdConnect" />
          <Metadata>
            <Item Key="ProviderName">https://login.live.com</Item>
            <Item Key="METADATA">https://login.live.com/.well-known/openid-configuration</Item>
            <Item Key="response_types">code</Item>
            <Item Key="response_mode">form_post</Item>
            <Item Key="scope">openid profile email</Item>
            <Item Key="HttpBinding">POST</Item>
            <Item Key="UsePolicyInRedirectUri">false</Item>
            <Item Key="client_id">Your Microsoft application client ID</Item>
          </Metadata>
          <CryptographicKeys>
            <Key Id="client_secret" StorageReferenceId="B2C_1A_MSASecret" />
          </CryptographicKeys>
          <OutputClaims>
            <OutputClaim ClaimTypeReferenceId="issuerUserId" PartnerClaimType="oid" />
            <OutputClaim ClaimTypeReferenceId="givenName" PartnerClaimType="given_name" />
            <OutputClaim ClaimTypeReferenceId="surName" PartnerClaimType="family_name" />
            <OutputClaim ClaimTypeReferenceId="displayName" PartnerClaimType="name" />
            <OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="socialIdpAuthentication" />
            <OutputClaim ClaimTypeReferenceId="identityProvider" PartnerClaimType="iss" />
            <OutputClaim ClaimTypeReferenceId="email" />
          </OutputClaims>
          <OutputClaimsTransformations>
            <OutputClaimsTransformation ReferenceId="CreateRandomUPNUserName" />
            <OutputClaimsTransformation ReferenceId="CreateUserPrincipalName" />
            <OutputClaimsTransformation ReferenceId="CreateAlternativeSecurityId" />
            <OutputClaimsTransformation ReferenceId="CreateSubjectClaimFromAlternativeSecurityId" />
          </OutputClaimsTransformations>
          <UseTechnicalProfileForSessionManagement ReferenceId="SM-SocialLogin" />
        </TechnicalProfile>
      </TechnicalProfiles>
    </ClaimsProvider>
    
  4. Nahraďte hodnotu client_id ID aplikace Microsoft Entra (klienta), které jste si poznamenali dříve.

  5. Soubor uložte.

Právě jste nakonfigurovali zásady, aby Služba Azure AD B2C věděla, jak komunikovat s aplikací účtu Microsoft v Microsoft Entra ID.

Přidání cesty uživatele

V tuto chvíli je zprostředkovatele identity nastavený, ale zatím není k dispozici na žádné přihlašovací stránce. Pokud nemáte vlastní cestu uživatele, vytvořte duplikát existující cesty uživatele šablony, jinak pokračujte dalším krokem.

  1. Otevřete soubor TrustFrameworkBase.xml z úvodní sady.
  2. Najděte a zkopírujte celý obsah prvku UserJourney , který obsahuje Id="SignUpOrSignIn".
  3. Otevřete TrustFrameworkExtensions.xml a najděte element UserJourneys. Pokud prvek neexistuje, přidejte ho.
  4. Vložte celý obsah elementu UserJourney , který jste zkopírovali jako podřízený prvek UserJourneys .
  5. Přejmenujte ID cesty uživatele. Například, Id="CustomSignUpSignIn".

Přidání zprostředkovatele identity do cesty uživatele

Teď, když máte cestu uživatele, přidejte do cesty uživatele nového zprostředkovatele identity. Nejdřív přidáte tlačítko pro přihlášení a pak tlačítko propočítáte s akcí. Akce je technický profil, který jste vytvořili dříve.

  1. Najděte prvek kroku orchestrace, který zahrnuje Type="CombinedSignInAndSignUp"nebo Type="ClaimsProviderSelection" na cestě uživatelem. Obvykle se jedná o první krok orchestrace. Element ClaimsProviderSelections obsahuje seznam zprostředkovatelů identity, se kterými se uživatel může přihlásit. Pořadí prvků řídí pořadí tlačítek pro přihlášení, která jsou uživateli prezentována. Přidejte element XML ClaimsProviderSelection. Nastavte hodnotu TargetClaimsExchangeId na popisný název.

  2. V dalším kroku orchestrace přidejte element ClaimsExchange . Nastavte ID na hodnotu ID cílové výměny deklarací identity. Aktualizujte hodnotu TechnicalProfileReferenceId na ID technického profilu, který jste vytvořili dříve.

Následující KÓD XML ukazuje první dva kroky orchestrace cesty uživatele se zprostředkovatelem identity:

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

<OrchestrationStep Order="2" Type="ClaimsExchange">
  ...
  <ClaimsExchanges>
    <ClaimsExchange Id="MicrosoftAccountExchange" TechnicalProfileReferenceId="MSA-MicrosoftAccount-OpenIdConnect" />
  </ClaimsExchanges>
</OrchestrationStep>

Konfigurace zásad předávající strany

Zásady předávající strany, například SignUpSignIn.xml, určují cestu uživatele, kterou azure AD B2C spustí. Najděte element DefaultUserJourney v rámci předávající strany. Aktualizujte ID reference tak, aby odpovídalo ID cesty uživatele, do kterého jste přidali zprostředkovatele identity.

V následujícím příkladu CustomSignUpSignIn je pro cestu uživatele nastavena hodnota ReferenceId na CustomSignUpSignIn:

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

Nahrání vlastních zásad

  1. Přihlaste se k portálu Azure.
  2. Na panelu nástrojů portálu vyberte ikonu Adresář a předplatné a pak vyberte adresář, který obsahuje vašeho tenanta Azure AD B2C.
  3. Na webu Azure Portal vyhledejte a vyberte Azure AD B2C.
  4. V části Zásady vyberte Architekturu prostředí identit.
  5. Vyberte Nahrát vlastní zásady a potom nahrajte dva soubory zásad, které jste změnili, v následujícím pořadí: zásady rozšíření, například TrustFrameworkExtensions.xml, pak zásady předávající strany, například SignUpSignIn.xml.

Testování vlastních zásad

  1. Vyberte například zásadu B2C_1A_signup_signinpředávající strany.
  2. V části Aplikace vyberte webovou aplikaci, kterou jste předtím zaregistrovali. Adresa URL odpovědi by se měla zobrazit https://jwt.ms.
  3. Vyberte tlačítko Spustit hned.
  4. Na registrační nebo přihlašovací stránce vyberte Microsoft , abyste se přihlásili pomocí účtu Microsoft.

Pokud je proces přihlášení úspěšný, prohlížeč se přesměruje na https://jwt.msobsah tokenu vráceného službou Azure AD B2C.