Azure Active Directory B2C için yeniden yönlendirme URL'lerini b2clogin.com olarak ayarlama

Azure Active Directory B2C (Azure AD B2C) uygulamalarınıza kaydolmak ve oturum açmak için bir kimlik sağlayıcısı ayarlarken, Azure AD B2C kimlik sağlayıcısının uç noktalarını belirtmeniz gerekir. Azure AD B2C ile kullanıcıların kimliğini doğrulamak için uygulamalarınızdaki ve API'lerinizdeki login.microsoftonline.com artık başvurmamalısınız. Bunun yerine, tüm uygulamalar için b2clogin.com veya özel bir etki alanı kullanın.

Bu değişiklikler hangi uç noktalara uygulanır?

b2clogin.com geçişi yalnızca kullanıcıların kimliğini doğrulamak için Azure AD B2C ilkelerini (kullanıcı akışları veya özel ilkeler) kullanan kimlik doğrulama uç noktaları için geçerlidir. Bu uç noktaların, Azure AD B2C'nin kullanması gereken ilkeyi belirten bir <policy-name> parametresi vardır. Azure AD B2C ilkeleri hakkında daha fazla bilgi edinin.

Eski uç noktalar şöyle görünebilir:

  • https://login.microsoft.com/<tenant-name>.onmicrosoft.com/<policy-name>/oauth2/v2.0/authorize
  • https://login.microsoft.com/<tenant-name>.onmicrosoft.com/oauth2/v2.0/authorize?p=<policy-name>

İlgili güncelleştirilmiş uç nokta şöyle görünür:

  • https://<tenant-name>.b2clogin.com/<tenant-name>.onmicrosoft.com/<policy-name>/oauth2/v2.0/authorize
  • https://<tenant-name>.b2clogin.com/<tenant-name>.onmicrosoft.com/oauth2/v2.0/authorize?p=<policy-name>

Azure AD B2C özel etki alanı ile ilgili güncelleştirilmiş uç nokta şöyle görünür:

  • https://login.contoso.com/<tenant-name>.onmicrosoft.com/<policy-name>/oauth2/v2.0/authorize
  • https://login.contoso.com/<tenant-name>.onmicrosoft.com/oauth2/v2.0/authorize?p=<policy-name>

Etkilenmeyen uç noktalar

Bazı müşteriler Microsoft Entra kurumsal kiracılarının paylaşılan özelliklerini kullanır. Örneğin, Azure AD B2C kiracısının MS Graph API'sini çağırmak için bir erişim belirteci alma.

Bu değişiklik, URL'de ilke parametresi içermeyen tüm uç noktaları etkilemez. Bunlara yalnızca Microsoft Entra Id'nin login.microsoftonline.com uç noktalarıyla erişilir ve b2clogin.com veya özel etki alanlarıyla kullanılamaz. Aşağıdaki örnekte Microsoft kimlik platformu geçerli bir belirteç uç noktası gösterilmektedir:

https://login.microsoftonline.com/<tenant-name>.onmicrosoft.com/oauth2/v2.0/token

Gerekli değişikliklere genel bakış

Azure AD B2C uç noktalarını kullanarak uygulamalarınızı login.microsoftonline.com geçirmek için yapmanız gereken çeşitli değişiklikler vardır:

  • Kimlik sağlayıcınızın uygulamalarında yeniden yönlendirme URL'sini b2clogin.com veya özel etki alanına başvuracak şekilde değiştirin. Daha fazla bilgi için kimlik sağlayıcısı yeniden yönlendirme URL'lerini değiştirme yönergelerini izleyin.
  • Azure AD B2C uygulamalarınızı kullanıcı akışında ve belirteç uç noktası başvurularında b2clogin.com veya özel etki alanını kullanacak şekilde güncelleştirin. Değişiklik, Microsoft Authentication Library (MSAL) gibi bir kimlik doğrulama kitaplığı kullanımınızı güncelleştirmeyi içerebilir.
  • Kullanıcı arabirimi özelleştirmesi için CORS ayarlarında tanımladığınız tüm İzin Verilen Çıkış Noktalarını güncelleştirin.

Kimlik sağlayıcısı yeniden yönlendirme URL'lerini değiştirme

Bir uygulamayı oluşturduğunuz her kimlik sağlayıcısının web sitesinde, tüm güvenilen URL'leri login.microsoftonline.com yerine öğesine veya özel bir etki alanına yönlendirecek your-tenant-name.b2clogin.comşekilde değiştirin.

b2clogin.com yeniden yönlendirme URL'leriniz için kullanabileceğiniz iki biçim vardır. İlki, kiracı etki alanı adınızın yerine Kiracı Kimliği 'ni (GUID) kullanarak URL'nin herhangi bir yerinde "Microsoft" gösterilmemesi avantajını sağlar. Uç nokta bir authresp ilke adı içermeyebilir.

https://{your-tenant-name}.b2clogin.com/{your-tenant-id}/oauth2/authresp

İkinci seçenek, kiracı etki alanı adınızı biçiminde your-tenant-name.onmicrosoft.comkullanır. Örneğin:

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

Her iki biçim için:

  • değerini Azure AD B2C kiracınızın adıyla değiştirin {your-tenant-name} .
  • URL'de varsa kaldırın /te .

Uygulamalarınızı ve API'lerinizi güncelleştirme

Azure AD B2C özellikli uygulamalarınızdaki ve API'lerinizdeki kod çeşitli yerlerde başvurabilir login.microsoftonline.com . Örneğin, kodunuz kullanıcı akışlarına ve belirteç uç noktalarına başvurular içerebilir. Bunun yerine aşağıdakini şu başvuruya güncelleştirin your-tenant-name.b2clogin.com:

  • Yetkilendirme uç noktası
  • Belirteç uç noktası
  • Belirteç veren

Örneğin, Contoso'nun kaydolma/oturum açma ilkesinin yetkili uç noktası şu şekilde olacaktır:

https://contosob2c.b2clogin.com/00000000-0000-0000-0000-000000000000/B2C_1_signupsignin1

OWIN tabanlı web uygulamalarını b2clogin.com geçirme hakkında bilgi için bkz . OWIN tabanlı web API'sini b2clogin.com geçirme.

Azure AD B2C ile korunan Azure API Management API'lerini geçirmek için Azure AD B2C ile Azure API Management API'sinin güvenliğini sağlamanın b2clogin.com geçiş bölümüne bakın.

Microsoft Authentication Library (MSAL)

ValidateAuthority özelliğini MSAL.NET

MSAL.NET v2 veya önceki bir sürüm kullanıyorsanız, b2clogin.com yeniden yönlendirmelerine izin vermek için ValidateAuthority özelliğini false istemci örneği oluşturmada olarak ayarlayın. MSAL.NET v3 ve üzeri için bu değerin false olarak ayarlanması gerekmez.

ConfidentialClientApplication client = new ConfidentialClientApplication(...); // Can also be PublicClientApplication
client.ValidateAuthority = false; // MSAL.NET v2 and earlier **ONLY**

JavaScript validateAuthority özelliği için MSAL

JavaScript v1.2.2 veya öncesi için MSAL kullanıyorsanız validateAuthority özelliğini olarak falseayarlayın.

// MSAL.js v1.2.2 and earlier
this.clientApplication = new UserAgentApplication(
  env.auth.clientId,
  env.auth.loginAuthority,
  this.authCallback.bind(this),
  {
    validateAuthority: false // Required in MSAL.js v1.2.2 and earlier **ONLY**
  }
);

MSAL.js 1.3.0+ (varsayılan) olarak ayarlarsanız validateAuthority: true , ile knownAuthoritiesgeçerli bir belirteç veren de belirtmeniz gerekir:

// MSAL.js v1.3.0+
this.clientApplication = new UserAgentApplication(
  env.auth.clientId,
  env.auth.loginAuthority,
  this.authCallback.bind(this),
  {
    validateAuthority: true, // Supported in MSAL.js v1.3.0+
    knownAuthorities: ['tenant-name.b2clogin.com'] // Required if validateAuthority: true
  }
);

Sonraki adımlar

OWIN tabanlı web uygulamalarını b2clogin.com geçirme hakkında bilgi için bkz . OWIN tabanlı web API'sini b2clogin.com geçirme.

Azure AD B2C ile korunan Azure API Management API'lerini geçirmek için Azure AD B2C ile Azure API Management API'sinin güvenliğini sağlamanın b2clogin.com geçiş bölümüne bakın.