Azure Active Directory B2C'de belirli bir Microsoft Entra kuruluşu için oturum açmayı ayarlama

Bu makalede, Azure AD B2C'de kullanıcı akışı kullanarak belirli bir Microsoft Entra kuruluşundaki kullanıcılar için oturum açmayı etkinleştirme adımları gösterilmektedir.

Başlamadan önce, ayarladığınız ilke türünü seçmek için İlke türü seçin seçicisini kullanın. Azure Active Directory B2C, kullanıcıların uygulamalarınızla nasıl etkileşim kurduğunu tanımlamak için iki yöntem sunar: önceden tanımlanmış kullanıcı akışları veya tam olarak yapılandırılabilir özel ilkeler aracılığıyla. Bu makalede gerekli adımlar her yöntem için farklıdır.

Dekont

Azure Active Directory B2C'de özel ilkeler öncelikli olarak karmaşık senaryoları ele almak için tasarlanmıştır. Çoğu senaryoda, yerleşik kullanıcı akışlarını kullanmanızı öneririz. Bunu yapmadıysanız, Active Directory B2C'de özel ilkeleri kullanmaya başlama bölümünde özel ilke başlangıç paketi hakkında bilgi edinin.

Önkoşullar

Uygulamanın yayımcı etki alanını doğrulama

Kasım 2020 itibarıyla, uygulamanın yayımcı etki alanı doğrulanmadığı ve şirketin kimliği Microsoft İş Ortağı Ağı ile doğrulanmadığıve uygulamayla ilişkilendirilmediği sürece yeni uygulama kayıtları kullanıcı onayı isteminde doğrulanmamış olarak gösterilir. (Bu değişiklik hakkında daha fazla bilgi edinin.) Azure AD B2C kullanıcı akışları için yayımcının etki alanının yalnızca kimlik sağlayıcısı olarak bir Microsoft hesabı veya başka bir Microsoft Entra kiracısı kullanıldığında görüneceğini unutmayın. Bu yeni gereksinimleri karşılamak için aşağıdakileri yapın:

  1. Microsoft İş Ortağı Ağı (MPN) hesabınızı kullanarak şirket kimliğinizi doğrulayın. Bu işlem, şirketiniz ve şirketinizin birincil ilgili kişisi hakkındaki bilgileri doğrular.
  2. Aşağıdaki seçeneklerden birini kullanarak MPN hesabınızı uygulama kaydınızla ilişkilendirmek için yayımcı doğrulama işlemini tamamlayın:
    • Microsoft hesabı kimlik sağlayıcısının uygulama kaydı bir Microsoft Entra kiracısındaysa, Uygulama Kaydı portalında uygulamanızı doğrulayın.
    • Microsoft hesabı kimlik sağlayıcısı için uygulama kaydınız bir Azure AD B2C kiracısındaysa, uygulamanızı Microsoft Graph API'lerini kullanarak doğrulanmış yayımcı olarak işaretleyin (örneğin, Graph Gezgini'ni kullanma). Uygulamanın doğrulanmış yayımcısını ayarlama kullanıcı arabirimi şu anda Azure AD B2C kiracıları için devre dışıdır.

Microsoft Entra uygulamasını kaydetme

Azure Active Directory B2C'de (Azure AD B2C) belirli bir Microsoft Entra kuruluşundan Microsoft Entra hesabına sahip kullanıcılar için oturum açmayı etkinleştirmek için Azure portalında bir uygulama oluşturmanız gerekir. Daha fazla bilgi için bkz. Uygulamayı Microsoft kimlik platformu kaydetme.

  1. Azure Portal oturum açın.

  2. Birden çok kiracıya erişiminiz varsa, Dizinler + abonelikler menüsünden Microsoft Entra Id kiracınıza geçmek için üstteki menüden Ayarlar simgesini seçin.

  3. Azure portalında Microsoft Entra Id'yi arayın ve seçin.

  4. Soldaki menüde, Yönet'in altında Uygulama kayıtları'ı seçin.

  5. + Yeni kayıt'ı seçin.

  6. Uygulamanız için bir Ad girin. Örneğin, Azure AD B2C App.

  7. Bu uygulama için yalnızca bu kuruluş dizininde (Yalnızca Varsayılan Dizin - Tek kiracı) Hesaplar'ın varsayılan seçimini kabul edin.

  8. Yeniden Yönlendirme URI'si için Web değerini kabul edin ve tüm küçük harflerle aşağıdaki URL'yi girin; burada your-B2C-tenant-name yerine Azure AD B2C kiracınızın adı kullanılır.

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

    Örneğin, https://fabrikam.b2clogin.com/fabrikam.onmicrosoft.com/oauth2/authresp.

    Özel bir etki alanı kullanıyorsanız girin https://your-domain-name/your-tenant-name.onmicrosoft.com/oauth2/authresp. değerini özel etki alanınızla ve your-tenant-name kiracınızın adıyla değiştirinyour-domain-name.

  9. Kaydet'i seçin. Daha sonraki bir adımda kullanmak üzere Uygulama (istemci) kimliğini kaydedin.

  10. Sertifika gizli dizileri'ni& ve ardından Yeni istemci gizli dizisi'ni seçin.

  11. Gizli dizi için bir Açıklama girin, bir süre sonu seçin ve ardından Ekle'yi seçin. Gizli anahtarın Değerini sonraki bir adımda kullanmak üzere kaydedin.

Microsoft Entra Id'yi kimlik sağlayıcısı olarak yapılandırma

  1. Birden çok kiracıya erişiminiz varsa, Dizinler + abonelikler menüsünden Azure AD B2C kiracınıza geçmek için üstteki menüden Ayarlar simgesini seçin.

  2. Azure portalının sol üst köşesindeki Tüm hizmetler'i seçin ve ardından Azure AD B2C'yi arayıp seçin.

  3. Kimlik sağlayıcıları'yı ve ardından Yeni OpenID Bağlan sağlayıcı'yı seçin.

  4. Bir Ad girin. Örneğin Contoso Microsoft Entra Id girin.

  5. Meta veri URL'si için aşağıdaki URL'yi girin ve {tenant} yerine Microsoft Entra kiracınızın etki alanı adını girin:

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

Örneğin, https://login.microsoftonline.com/contoso.onmicrosoft.com/v2.0/.well-known/openid-configuration. Özel bir etki alanı kullanıyorsanız değerini içindeki https://login.microsoftonline.com/contoso.com/v2.0/.well-known/openid-configurationözel etki alanınızla değiştirincontoso.com.

  1. İstemci Kimliği için daha önce kaydettiğiniz uygulama kimliğini girin.

  2. İstemci gizli dizisi için daha önce kaydettiğiniz istemci gizli dizisi değerini girin.

  3. Kapsam alanına girinopenid profile.

  4. Yanıt türü ve Yanıt modu için varsayılan değerleri bırakın.

  5. (İsteğe bağlı) Etki alanı ipucu için girincontoso.com. Daha fazla bilgi için bkz . Azure Active Directory B2C kullanarak doğrudan oturum açmayı ayarlama.

  6. Kimlik sağlayıcısı beyan eşlemesi'nin altında aşağıdaki talepleri seçin:

    • Kullanıcı Kimliği: oid
    • Görünen ad: ad
    • Verilen ad: given_name
    • Soyadı: family_name
    • E-posta: e-posta
  7. Kaydet'i seçin.

Kullanıcı akışına Microsoft Entra kimlik sağlayıcısı ekleme

Bu noktada, Microsoft Entra kimlik sağlayıcısı ayarlanmıştır, ancak henüz oturum açma sayfalarının hiçbirinde kullanılamaz. Microsoft Entra kimlik sağlayıcısını bir kullanıcı akışına eklemek için:

  1. Azure AD B2C kiracınızda Kullanıcı akışları'yı seçin.
  2. Microsoft Entra kimlik sağlayıcısını eklemek istediğiniz kullanıcı akışına tıklayın.
  3. Ayarlar altında Kimlik sağlayıcıları'yı seçin
  4. Özel kimlik sağlayıcıları'nın altında Contoso Microsoft Entra Id'yi seçin.
  5. Kaydet'i seçin.
  6. İlkenizi test etmek için Kullanıcı akışını çalıştır'ı seçin.
  7. Uygulama için daha önce kaydettiğiniz bir web uygulamasını seçin. Yanıt URL'si göstermelidirhttps://jwt.ms.
  8. Kullanıcı akışını çalıştır düğmesini seçin.
  9. Microsoft Entra Contoso hesabıyla oturum açmak için kaydolma veya oturum açma sayfasında Contoso Microsoft Entra Id'yi seçin.

Oturum açma işlemi başarılı olursa, tarayıcınız Azure AD B2C tarafından döndürülen belirtecin içeriğini görüntüleyen öğesine yönlendirilir https://jwt.ms.

İlke anahtarı oluşturma

Oluşturduğunuz uygulama anahtarını Azure AD B2C kiracınızda depolamanız gerekir.

  1. Birden çok kiracıya erişiminiz varsa, Dizinler + abonelikler menüsünden Azure AD B2C kiracınıza geçmek için üstteki menüden Ayarlar simgesini seçin.
  2. Azure portalının sol üst köşesindeki Tüm hizmetler'i seçin ve ardından Azure AD B2C'yi arayıp seçin.
  3. İlkeler'in altında Kimlik Deneyimi Çerçevesi'ne tıklayın.
  4. İlke anahtarları'nı ve ardından Ekle'yi seçin.
  5. Seçenekler için öğesini seçinManual.
  6. İlke anahtarı için bir Ad girin. Örneğin, ContosoAppSecret. Ön ek B2C_1A_ , oluşturulduğunda anahtarınızın adına otomatik olarak eklenir, bu nedenle aşağıdaki bölümdeki XML'deki başvurusu B2C_1A_ContosoAppSecret.
  7. Gizli Dizi alanına, daha önce kaydettiğiniz istemci gizli anahtarı değerinizi girin.
  8. Anahtar kullanımı için öğesini seçinSignature.
  9. Oluştur seçeneğini belirleyin.

Microsoft Entra Id'yi kimlik sağlayıcısı olarak yapılandırma

Kullanıcıların Microsoft Entra hesabı kullanarak oturum açmasını sağlamak için Microsoft Entra Id'yi Azure AD B2C'nin bir uç nokta üzerinden iletişim kurabileceği bir talep sağlayıcısı olarak tanımlamanız gerekir. Uç nokta, belirli bir kullanıcının kimliğini doğrulamak için Azure AD B2C tarafından kullanılan bir dizi talep sağlar.

İlkenizin uzantı dosyasındaki ClaimsProvider öğesine Microsoft Entra Id ekleyerek Microsoft Entra Id'yi talep sağlayıcısı olarak tanımlayabilirsiniz.

  1. TrustFrameworkExtensions.xml dosyasını açın.

  2. ClaimsProviders öğesini bulun. Yoksa kök öğesinin altına ekleyin.

  3. Aşağıdaki gibi yeni bir ClaimsProvider ekleyin:

    <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. ClaimsProvider öğesinin altında Domain değerini diğer kimlik sağlayıcılarından ayırt etmek için kullanılabilecek benzersiz bir değerle güncelleştirin. Örneğin, Contoso. Bu etki alanı ayarının sonuna bir .com koymazsınız.

  5. ClaimsProvider öğesinin altında DisplayName değerini talep sağlayıcısı için kolay bir adla güncelleştirin. Bu değer şu anda kullanılmamakta.

Teknik profili güncelleştirme

Microsoft Entra uç noktasından belirteç almak için Azure AD B2C'nin Microsoft Entra Id ile iletişim kurmak için kullanması gereken protokolleri tanımlamanız gerekir. Bu, ClaimsProvider'ın TechnicalProfile öğesi içinde yapılır.

  1. TechnicalProfile öğesinin kimliğini güncelleştirin. Bu kimlik, ilkenin diğer bölümlerinden bu teknik profile başvurmak için kullanılır, örneğin AADContoso-OpenIdConnect.
  2. DisplayName değerini güncelleştirin. Bu değer, oturum açma ekranınızdaki oturum açma düğmesinde görüntülenir.
  3. Açıklama değerini güncelleştirin.
  4. Microsoft Entra Id, OpenID Bağlan protokolunu kullanır, bu nedenle Protokol değerinin olduğundan OpenIdConnectemin olun.
  5. METADATA değerini olarak https://login.microsoftonline.com/tenant-name.onmicrosoft.com/v2.0/.well-known/openid-configurationayarlayın. Burada tenant-name Microsoft Entra kiracınızın adıdır. Örneğin https://login.microsoftonline.com/contoso.onmicrosoft.com/v2.0/.well-known/openid-configuration
  6. client_id uygulama kaydından uygulama kimliğine ayarlayın.
  7. CryptographicKeys altında, Depolama ReferenceId değerini daha önce oluşturduğunuz ilke anahtarının adıyla güncelleştirin. Örneğin, B2C_1A_ContosoAppSecret.

Kullanıcı yolculuğu ekleme

Bu noktada, kimlik sağlayıcısı ayarlanmıştır, ancak henüz oturum açma sayfalarından herhangi birinde kullanılamaz. Kendi özel kullanıcı yolculuğunuz yoksa, mevcut şablon kullanıcı yolculuğunun bir kopyasını oluşturun, aksi takdirde sonraki adıma geçin.

  1. Başlangıç paketinden TrustFrameworkBase.xml dosyasını açın.
  2. içeren Id="SignUpOrSignIn"UserJourney öğesinin tüm içeriğini bulun ve kopyalayın.
  3. TrustFrameworkExtensions.xml dosyasını açın ve UserJourneys öğesini bulun. Öğesi yoksa bir tane ekleyin.
  4. UserJourneys öğesinin alt öğesi olarak kopyaladığınız UserJourney öğesinin tüm içeriğini yapıştırın.
  5. Kullanıcı yolculuğunun kimliğini yeniden adlandırın. Örneğin, Id="CustomSignUpSignIn".

Kimlik sağlayıcısını kullanıcı yolculuğuna ekleme

Artık bir kullanıcı yolculuğunuz olduğuna göre, yeni kimlik sağlayıcısını kullanıcı yolculuğuna ekleyin. Önce bir oturum açma düğmesi eklersiniz, ardından düğmeyi bir eyleme bağlarsınız. Eylem, daha önce oluşturduğunuz teknik profildir.

  1. veya içeren düzenleme adımı öğesini Type="CombinedSignInAndSignUp"Type="ClaimsProviderSelection" kullanıcı yolculuğunda bulun. Genellikle ilk düzenleme adımıdır. ClaimsProviderSelections öğesi, kullanıcının oturum açabileceği kimlik sağlayıcılarının listesini içerir. Öğelerin sırası, kullanıcıya sunulan oturum açma düğmelerinin sırasını denetler. ClaimsProviderSelection XML öğesi ekleyin. TargetClaimsExchangeId değerini kolay bir ad olarak ayarlayın.

  2. Sonraki düzenleme adımında claimsexchange öğesi ekleyin. Kimliği hedef talep değişim kimliğinin değerine ayarlayın. TechnicalProfileReferenceId değerini daha önce oluşturduğunuz teknik profilin kimliğine güncelleştirin.

Aşağıdaki XML, kimlik sağlayıcısıyla bir kullanıcı yolculuğunun ilk iki düzenleme adımını gösterir:

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

Bağlı olan taraf ilkesini yapılandırma

Bağlı olan taraf ilkesi, örneğin SignUpSignIn.xml, Azure AD B2C'nin yürüteceği kullanıcı yolculuğunu belirtir. Bağlı olan taraf içinde DefaultUserJourney öğesini bulun. ReferenceId değerini, kimlik sağlayıcısını eklediğiniz kullanıcı yolculuğu kimliğiyle eşleşecek şekilde güncelleştirin.

Aşağıdaki örnekte, kullanıcı yolculuğu için CustomSignUpSignIn ReferenceId değeri olarak CustomSignUpSignInayarlanmıştır:

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

Özel ilkeyi karşıya yükleme

  1. Azure Portal oturum açın.
  2. Portal araç çubuğunda Dizin + Abonelik simgesini ve ardından Azure AD B2C kiracınızı içeren dizini seçin.
  3. Azure portalında Azure AD B2C'yi arayın ve seçin.
  4. İlkeler'in altında Kimlik Deneyimi Çerçevesi'ne tıklayın.
  5. Özel İlkeyi Karşıya Yükle'yi seçin ve değiştirdiğiniz iki ilke dosyasını şu sırayla karşıya yükleyin: uzantı ilkesi, örneğin TrustFrameworkExtensions.xml, ve gibi SignUpSignIn.xmlbağlı olan taraf ilkesi.

Özel ilkenizi test edin

  1. Bağlı olan taraf ilkenizi seçin, örneğin B2C_1A_signup_signin.
  2. Uygulama için daha önce kaydettiğiniz bir web uygulamasını seçin. Yanıt URL'si göstermelidirhttps://jwt.ms.
  3. Şimdi çalıştır düğmesini seçin.
  4. Microsoft Entra Contoso hesabıyla oturum açmak için kaydolma veya oturum açma sayfasında Contoso Çalışanı'nı seçin.

Oturum açma işlemi başarılı olursa, tarayıcınız Azure AD B2C tarafından döndürülen belirtecin içeriğini görüntüleyen öğesine yönlendirilir https://jwt.ms.

[İsteğe bağlı] İsteğe bağlı talepleri yapılandırma

ve given_name taleplerini Microsoft Entra Id'den almak family_name istiyorsanız, Azure portalı kullanıcı arabiriminde veya uygulama bildiriminde uygulamanız için isteğe bağlı beyanlar yapılandırabilirsiniz. Daha fazla bilgi için bkz . Microsoft Entra uygulamanıza isteğe bağlı talepler sağlama.

  1. Kurumsal Microsoft Entra kiracınızı kullanarak Azure portalında oturum açın. Veya zaten oturum açtıysanız, kurumsal Microsoft Entra kiracınızı (örneğin Contoso) içeren dizini kullandığınızdan emin olun:
    1. Portal araç çubuğunda Dizinler + abonelikler simgesini seçin.
    2. Portal ayarlarında | Dizinler + abonelikler sayfası, Dizin adı listesinde Microsoft Entra dizininizi bulun ve ardından Değiştir'i seçin.
  2. Azure portalında Microsoft Entra Id'yi arayın ve seçin.
  3. Soldaki menüde, Yönet'in altında Uygulama kayıtları'ı seçin.
  4. Listede isteğe bağlı talepleri yapılandırmak istediğiniz uygulamayı seçin, örneğin Azure AD B2C App.
  5. Yönet bölümünde Belirteç yapılandırması'nı seçin.
  6. İsteğe bağlı talep ekle öğesini seçin.
  7. Belirteç türü için Kimlik'i seçin.
  8. Eklenecek family_name isteğe bağlı talepleri ve given_nameöğesini seçin.
  9. Add (Ekle) seçeneğini belirleyin. Microsoft Graph profil iznini aç (taleplerin belirteçte görünmesi için gereklidir) görüntülenirse, etkinleştirin ve ekle'yi yeniden seçin.

[İsteğe bağlı] Uygulamanızın orijinalliğini doğrulama

Yayımcı doğrulaması, kullanıcılarınızın kaydettiğiniz uygulamanın orijinalliğini anlamasına yardımcı olur. Doğrulanmış bir uygulama, uygulamanın yayımcısının microsoft iş ortağı ağını (MPN) kullanarak kimliğini doğruladığı anlamına gelir. Uygulamanızı yayımcısı doğrulandı olarak işaretlemeyi öğrenin.

Sonraki adımlar

Microsoft Entra belirtecini uygulamanıza geçirmeyi öğrenin.