Sdílet prostřednictvím


Nastavení přihlášení pro konkrétní organizaci Microsoft Entra v Azure Active Directory B2C

V tomto článku se dozvíte, jak povolit přihlašování uživatelů z konkrétní organizace Microsoft Entra pomocí toku uživatele v Azure AD 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

Ověření domény vydavatele aplikace

Od listopadu 2020 se nové registrace aplikací zobrazí jako neověřené v výzvě k vyjádření souhlasu uživatele, pokud není ověřenadoména vydavatele aplikace a identita společnosti byla ověřena pomocí programu Microsoft Partner Network a přidružená k aplikaci. (Další informace o této změně.) Všimněte si, že pro toky uživatelů Azure AD B2C se doména vydavatele zobrazí pouze při použití účtu Microsoft nebo jiného tenanta Microsoft Entra jako zprostředkovatele identity. Pokud chcete splnit tyto nové požadavky, postupujte takto:

  1. Pomocí účtu MPN (Microsoft Partner Network) ověřte svou firemní identitu. Tento proces ověří informace o vaší společnosti a primárním kontaktu vaší společnosti.
  2. Dokončete proces ověření vydavatele a přidružte svůj účet MPN k registraci aplikace pomocí jedné z následujících možností:

Registrace aplikace Microsoft Entra

Pokud chcete uživatelům s účtem Microsoft Entra povolit přihlášení z konkrétní organizace Microsoft Entra, musíte v Azure Active Directory B2C (Azure AD B2C) vytvořit aplikaci na webu Azure Portal. Další informace najdete v tématu Registrace aplikace na platformě Microsoft Identity Platform.

  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. Na webu Azure Portal vyhledejte a vyberte ID Microsoft Entra.

  4. V nabídce vlevo v části Spravovat vyberte Registrace aplikací.

  5. Vyberte + Nová registrace.

  6. Zadejte název aplikace. Například, Azure AD B2C App.

  7. Přijměte výchozí výběr účtů pouze v tomto organizačním adresáři (pouze výchozí adresář – jeden tenant) pro tuto aplikaci.

  8. U identifikátoru URI přesměrování přijměte hodnotu webu a do všech malých písmen zadejte následující adresu URL, kde your-B2C-tenant-name se nahradí názvem vašeho tenanta Azure AD B2C.

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

    Například, https://fabrikam.b2clogin.com/fabrikam.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-domain-name vlastní doménou a your-tenant-name názvem vašeho tenanta.

  9. Vyberte Zaregistrovat. Poznamenejte si ID aplikace (klienta) pro použití v pozdějším kroku.

  10. Vyberte Tajné kódy certifikátů & a pak vyberte Nový tajný klíč klienta.

  11. Zadejte popis tajného kódu, vyberte vypršení platnosti a pak vyberte Přidat. Poznamenejte si hodnotu tajného kódu pro použití v pozdějším kroku.

Konfigurace ID Microsoft Entra jako zprostředkovatele identity

  1. 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.

  2. V levém horním rohu webu Azure Portal zvolte Všechny služby a pak vyhledejte a vyberte Azure AD B2C.

  3. Vyberte zprostředkovatele identity a pak vyberte Nový zprostředkovatele OpenID Připojení.

  4. Zadejte Název. Zadejte například CONTOSO Microsoft Entra ID.

  5. Jako adresu URL metadat zadejte následující adresu URL a nahraďte {tenant} název domény vašeho tenanta Microsoft Entra:

    https://login.microsoftonline.com/{tenant}/v2.0/.well-known/openid-configuration
    

Například, https://login.microsoftonline.com/contoso.onmicrosoft.com/v2.0/.well-known/openid-configuration. Pokud používáte vlastní doménu, nahraďte contoso.com vlastní doménou v https://login.microsoftonline.com/contoso.com/v2.0/.well-known/openid-configurationsouboru .

  1. Jako ID klienta zadejte ID aplikace, které jste si předtím poznamenali.

  2. Jako tajný klíč klienta zadejte hodnotu tajného klíče klienta, kterou jste si předtím poznamenali.

  3. Jako obor zadejte openid profile.

  4. Ponechte výchozí hodnoty pro typ odpovědi a režim odpovědi.

  5. (Volitelné) Jako nápovědu k doméně zadejte contoso.com. Další informace najdete v tématu Nastavení přímého přihlašování pomocí Azure Active Directory B2C.

  6. V části Mapování deklarací identity vyberte následující deklarace identity:

    • ID uživatele: oid
    • Zobrazovaný název: název
    • Jméno: given_name
    • Příjmení: family_name
    • E-mail: e-mail
  7. Zvolte Uložit.

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

V tomto okamžiku je zprostředkovatel identity Microsoft Entra nastavený, ale zatím není k dispozici na žádné přihlašovací stránce. Přidání zprostředkovatele identity Microsoft Entra 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 Microsoft Entra.
  3. V části Nastavení vyberte zprostředkovatele identity.
  4. V části Vlastní zprostředkovatelé identit vyberte Contoso Microsoft Entra ID.
  5. Zvolte Uložit.
  6. Pokud chcete zásady otestovat, vyberte Spustit tok uživatele.
  7. V části Aplikace vyberte webovou aplikaci, kterou jste předtím zaregistrovali. Adresa URL odpovědi by se měla zobrazit https://jwt.ms.
  8. Vyberte tlačítko Spustit tok uživatele.
  9. Na registrační nebo přihlašovací stránce vyberte CONTOSO Microsoft Entra ID a přihlaste se pomocí účtu Microsoft Entra Contoso.

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.

Vytvoření klíče zásad

Musíte uložit klíč aplikace, který jste vytvořili v tenantovi Azure AD B2C.

  1. 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.
  2. V levém horním rohu webu Azure Portal zvolte Všechny služby a pak vyhledejte a vyberte Azure AD B2C.
  3. V části Zásady vyberte Architekturu prostředí identit.
  4. Vyberte Klíče zásad a pak vyberte Přidat.
  5. V nabídce Možnosti zvolte Manual.
  6. Zadejte název klíče zásady. Například, ContosoAppSecret. Předpona B2C_1A_ se automaticky přidá k názvu klíče při jeho vytvoření, takže jeho odkaz v kódu XML v následující části je B2C_1A_ContosoAppSecret.
  7. Do pole Tajný kód zadejte hodnotu tajného klíče klienta, kterou jste si poznamenali dříve.
  8. V případě použití klíče vyberte Signature.
  9. Vyberte Vytvořit.

Konfigurace ID Microsoft Entra jako zprostředkovatele identity

Pokud chcete uživatelům umožnit přihlášení pomocí účtu Microsoft Entra, musíte definovat ID Microsoft Entra 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í identity přidáním Microsoft Entra ID do elementu ClaimsProvider v souboru s příponou vaší zásady.

  1. Otevřete soubor 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>Contoso</Domain>
      <DisplayName>Login using Contoso</DisplayName>
      <TechnicalProfiles>
        <TechnicalProfile Id="AADContoso-OpenIdConnect">
          <DisplayName>Contoso Employee</DisplayName>
          <Description>Login with your Contoso account</Description>
          <Protocol Name="OpenIdConnect"/>
          <Metadata>
            <Item Key="METADATA">https://login.microsoftonline.com/tenant-name.onmicrosoft.com/v2.0/.well-known/openid-configuration</Item>
            <Item Key="client_id">00000000-0000-0000-0000-000000000000</Item>
            <Item Key="response_types">code</Item>
            <Item Key="scope">openid profile</Item>
            <Item Key="response_mode">form_post</Item>
            <Item Key="HttpBinding">POST</Item>
            <Item Key="UsePolicyInRedirectUri">false</Item>
          </Metadata>
          <CryptographicKeys>
            <Key Id="client_secret" StorageReferenceId="B2C_1A_ContosoAppSecret"/>
          </CryptographicKeys>
          <OutputClaims>
            <OutputClaim ClaimTypeReferenceId="issuerUserId" PartnerClaimType="oid"/>
            <OutputClaim ClaimTypeReferenceId="tenantId" PartnerClaimType="tid"/>
            <OutputClaim ClaimTypeReferenceId="givenName" PartnerClaimType="given_name" />
            <OutputClaim ClaimTypeReferenceId="surName" PartnerClaimType="family_name" />
            <OutputClaim ClaimTypeReferenceId="displayName" PartnerClaimType="name" />
            <OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="socialIdpAuthentication" AlwaysUseDefaultValue="true" />
            <OutputClaim ClaimTypeReferenceId="identityProvider" PartnerClaimType="iss" />
          </OutputClaims>
          <OutputClaimsTransformations>
            <OutputClaimsTransformation ReferenceId="CreateRandomUPNUserName"/>
            <OutputClaimsTransformation ReferenceId="CreateUserPrincipalName"/>
            <OutputClaimsTransformation ReferenceId="CreateAlternativeSecurityId"/>
            <OutputClaimsTransformation ReferenceId="CreateSubjectClaimFromAlternativeSecurityId"/>
          </OutputClaimsTransformations>
          <UseTechnicalProfileForSessionManagement ReferenceId="SM-SocialLogin"/>
        </TechnicalProfile>
      </TechnicalProfiles>
    </ClaimsProvider>
    
  4. V části ClaimsProvider elementu aktualizujte hodnotu domain na jedinečnou hodnotu, kterou lze použít k odlišení od jiných zprostředkovatelů identity. Příklad: Contoso. Na konec tohoto nastavení domény neuložíte .com .

  5. V části ClaimsProvider elementu aktualizujte hodnotu DisplayName na popisný název pro zprostředkovatele deklarací. Tato hodnota se aktuálně nepoužívá.

Aktualizace technického profilu

Pokud chcete získat token z koncového bodu Microsoft Entra, musíte definovat protokoly, které má Azure AD B2C použít ke komunikaci s Microsoft Entra ID. To se provádí uvnitř TechnicalProfile elementu ClaimsProvider.

  1. Aktualizujte ID elementu TechnicalProfile . Toto ID se používá k odkazování na tento technický profil z jiných částí zásad, například AADContoso-OpenIdConnect.
  2. Aktualizujte hodnotu pro DisplayName. Tato hodnota se zobrazí na přihlašovací obrazovce na tlačítku pro přihlášení.
  3. Aktualizujte hodnotu popisu.
  4. Microsoft Entra ID používá OpenID Připojení protokol, proto se ujistěte, že hodnota pro Protokol je OpenIdConnect.
  5. Nastavte hodnotu METADATA na https://login.microsoftonline.com/tenant-name.onmicrosoft.com/v2.0/.well-known/openid-configuration, kde tenant-name je název vašeho tenanta Microsoft Entra. Například https://login.microsoftonline.com/contoso.onmicrosoft.com/v2.0/.well-known/openid-configuration
  6. Nastavte client_id na ID aplikace z registrace aplikace.
  7. V části Kryptografické klíče aktualizujte hodnotu StorageReferenceId na název klíče zásady, který jste vytvořili dříve. Například, B2C_1A_ContosoAppSecret.

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="AzureADContosoExchange" />
  </ClaimsProviderSelections>
  ...
</OrchestrationStep>

<OrchestrationStep Order="2" Type="ClaimsExchange">
  ...
  <ClaimsExchanges>
    <ClaimsExchange Id="AzureADContosoExchange" TechnicalProfileReferenceId="AADContoso-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í stránce nebo na přihlašovací stránce vyberte Zaměstnance společnosti Contoso a přihlaste se pomocí účtu Microsoft Entra Contoso.

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.

[Volitelné] 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 webu Azure Portal pomocí tenanta Microsoft Entra vaší organizace. Nebo pokud jste už přihlášení, ujistěte se, že používáte adresář, který obsahuje vašeho organizačního tenanta Microsoft Entra (například Contoso):
    1. Na panelu nástrojů portálu vyberte ikonu Adresáře a předplatná .
    2. V nastavení portálu | Adresářů a stránka předplatných , vyhledejte adresář Microsoft Entra v seznamu názvů adresářů a pak vyberte Přepnout.
  2. Na webu Azure Portal vyhledejte a vyberte ID Microsoft Entra.
  3. V nabídce vlevo v části Spravovat vyberte Registrace aplikací.
  4. Vyberte aplikaci, pro kterou chcete v seznamu nakonfigurovat volitelné deklarace identity, například Azure AD B2C App.
  5. V části Správa vyberte konfiguraci tokenu.
  6. Vyberte Přidat volitelnou deklaraci identity.
  7. Jako typ tokenu vyberte ID.
  8. Vyberte volitelné deklarace identity, které chcete přidat, family_name a given_name.
  9. Vyberte Přidat. Pokud se zobrazí zapnutí oprávnění profilu Microsoft Graphu (požadované pro zobrazení deklarací identity v tokenu), povolte ho a pak znovu vyberte Přidat .

[Volitelné] Ověření pravosti aplikace

Ověření vydavatele pomáhá uživatelům pochopit pravost aplikace, kterou jste zaregistrovali. Ověřená aplikace znamená, že vydavatel aplikace ověřil svou identitu pomocí programu Microsoft Partner Network (MPN). Zjistěte, jak označit aplikaci jako ověřenou vydavatelem.

Další kroky

Zjistěte, jak předat token Microsoft Entra vaší aplikaci.