Mengatur URL pengalihan ke b2clogin.com untuk Azure Active Directory B2C

Saat Anda menyiapkan IdP untuk mendaftar dan masuk ke aplikasi Azure Active Directory B2C (Azure AD B2C), Anda perlu menentukan titik akhir idP Azure AD B2C. Anda seharusnya tidak lagi merujuk login.microsoftonline.com di aplikasi dan API Anda untuk mengautentikasi pengguna dengan AAD B2C. Sebagai gantinya, gunakan b2clogin.com atau domain kustom untuk semua aplikasi.

Titik akhir apa yang berlaku untuk perubahan ini

Transisi ke b2clogin.com hanya berlaku untuk titik akhir autentikasi yang menggunakan kebijakan AAD B2C (alur pengguna atau kebijakan kustom) untuk mengautentikasi pengguna. Titik akhir ini memiliki parameter <policy-name> yang menetapkan kebijakan yang harus digunakan oleh AAD B2C. Pelajari selengkapnya tentang kebijakan AAD B2C.

Titik akhir yang lama mungkin terlihat seperti:

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

Titik akhir yang diperbarui terkait akan terlihat seperti:

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

Dengan domain kustom Azure AD B2C, titik akhir terkait yang diperbarui akan terlihat seperti:

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

Titik akhir yang tidak terpengaruh

Beberapa pelanggan menggunakan kemampuan bersama penyewa perusahaan Microsoft Entra. Misalnya, memperoleh token akses untuk memanggil MS Graph API dari penyewa Azure AD B2C.

Perubahan ini tidak memengaruhi semua titik akhir, yang tidak berisi parameter kebijakan di URL. Mereka hanya diakses dengan titik akhir login.microsoftonline.com ID Microsoft Entra, dan tidak dapat digunakan dengan domain b2clogin.com, atau kustom. Contoh berikut menunjukkan titik akhir token yang valid dari platform identitas Microsoft:

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

Gambaran umum perubahan yang diperlukan

Ada beberapa modifikasi yang mungkin perlu Anda lakukan untuk memigrasikan aplikasi Anda dari login.microsoftonline.com demgam menggunakan titik akhir Azure AD B2C:

  • Ubah URL pengalihan di aplikasi IdP Anda untuk merujuk ke b2clogin.com, atau domain kustom. Untuk informasi selengkapnya, ikuti panduan mengubah URL pengalihan idP.
  • Perbarui aplikasi AAD B2C Anda untuk menggunakan b2clogin.com, atau domain kustom dalam alur pengguna dan referensi titik akhir tokennya. Perubahan ini dapat termasuk memperbarui penggunaan pustaka autentikasi seperti Pustaka Autentikasi Microsoft (MSAL).
  • Perbarui Asal yang Diizinkan yang Anda tentukan dalam pengaturan CORS untuk kustomisasi antarmuka pengguna.

Mengubah URL pengalihan IdP

Di setiap situs web IdP tempat Anda membuat aplikasi, ubah semua URL tepercaya untuk dialihkan ke your-tenant-name.b2clogin.com, atau domain kustom sebagai ganti dari login.microsoftonline.com.

Ada dua format yang dapat Anda gunakan untuk URL pengalihan b2clogin.com. Yang pertama memberikan keuntungan tidak adanya "Microsoft" yang muncul di mana pun di URL dengan menggunakan ID Penyewa (GUID) sebagai pengganti nama domain penyewa Anda. Catatan, titik akhir authresp mungkin tidak berisi nama kebijakan.

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

Opsi kedua menggunakan nama domain penyewa Anda dalam bentuk your-tenant-name.onmicrosoft.com. Contohnya:

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

Untuk kedua format:

  • Ganti {your-tenant-name} dengan nama penyewa Azure AD B2C Anda.
  • Hapus /te jika ada di URL.

Memperbarui aplikasi dan API Anda

Kode di aplikasi dan API berkemampuan AAD B2C Anda dapat merujuk ke login.microsoftonline.com di beberapa tempat. Misalnya, kode Anda mungkin memiliki referensi ke alur pengguna dan titik akhir token. Perbarui yang berikut ini sebagai referensi your-tenant-name.b2clogin.com:

  • Titik Akhir otorisasi
  • Titik akhir token
  • Pengeluar token

Misalnya, titik akhir otoritas untuk kebijakan pendaftaran/rincian masuk Contoso sekarang adalah:

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

Untuk informasi tentang memigrasikan aplikasi web berbasis OWIN ke b2clogin.com, lihat Memigrasi API web berbasis OWIN ke b2clogin.com.

Untuk memigrasikan Azure API Management API yang dilindungi oleh AAD B2C, lihat bagian Migrasi ke b2clogin.com dari Mengamankan Azure API Management API dengan AAD B2C.

Microsoft Authentication Library (MSAL)

Properti MSAL.NET ValidateAuthority

Jika Anda menggunakan MSAL.NET v2 atau yang lebih lama, atur properti ValidateAuthority menjadi false pada instans klien untuk memungkinkan pengalihan ke b2clogin.com. Mengatur nilai ini ke false tidak diperlukan untuk MSAL.NET v3 dan yang lebih baru.

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

MSAL untuk JavaScript properti validateAuthority

Jika Anda menggunakan MSAL untuk JavaScript v1.2.2 atau yang lebih lama, atur properti validateAuthority menjadi false.

// 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**
  }
);

Jika Anda mengatur validateAuthority: true di MSAL.js 1.3.0+ (default), Anda juga harus menentukan pengeluar token yang valid dengan knownAuthorities:

// 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
  }
);

Langkah berikutnya

Untuk informasi tentang memigrasikan aplikasi web berbasis OWIN ke b2clogin.com, lihat Memigrasi API web berbasis OWIN ke b2clogin.com.

Untuk memigrasikan Azure API Management API yang dilindungi oleh AAD B2C, lihat bagian Migrasi ke b2clogin.com dari Mengamankan Azure API Management API dengan AAD B2C.