Menyiapkan masuk untuk organisasi Azure Active Directory tertentu di Azure Active Directory B2C

Artikel ini memperlihatkan kepada Anda cara mengaktifkan masuk untuk pengguna dari organisasi Azure AD tertentu menggunakan alur pengguna di Azure AD B2C.

Sebelum memulai, gunakan pemilih Pilih jenis kebijakan untuk memilih jenis kebijakan yang Anda siapkan. Azure Active Directory B2C menawarkan dua metode untuk menentukan cara pengguna berinteraksi dengan aplikasi Anda: melalui alur pengguna yang telah ditentukan sebelumnya atau melalui kebijakan kustom yang sepenuhnya dapat dikonfigurasi. Langkah yang diperlukan dalam artikel ini berbeda untuk setiap metode.

Catatan

Di Azure Active Directory B2C, kebijakan kustom didesain khusus untuk menangani skenario kompleks. Untuk skenario umum, sebaiknya gunakan alur pengguna bawaan. Jika Anda belum melakukannya, pelajari tentang paket starter kebijakan kustom di Mulai dengan kebijakan kustom di Azure Active Directory B2C.

Prasyarat

Memverifikasi domain penerbit aplikasi

Mulai November 2020, pendaftaran aplikasi baru muncul sebagai belum diverifikasi di permintaan izin pengguna kecuali domain penerbit aplikasi diverifikasidan identitas perusahaan telah diverifikasi dengan Jaringan Mitra Microsoft dan terkait dengan aplikasi. (Pelajari selengkapnya tentang perubahan ini.) Perhatikan bahwa untuk alur pengguna Azure AD B2C, domain penerbit hanya muncul saat menggunakan akun Microsoft atau penyewa Microsoft Azure AD lainnya sebagai IdP. Untuk memenuhi persyaratan baru ini, lakukan hal berikut:

  1. Verifikasi identitas perusahaan Anda menggunakan akun Microsoft Partner Network (MPN) Anda. Proses ini memverifikasi informasi tentang perusahaan Anda dan kontak utama perusahaan Anda.
  2. Selesaikan proses verifikasi penerbit untuk mengaitkan akun MPN Anda dengan pendaftaran aplikasi Anda menggunakan salah satu opsi berikut:

Mendaftarkan aplikasi Microsoft Azure AD

Untuk mengaktifkan masuk untuk pengguna dengan akun Microsoft Azure AD dari organisasi Microsoft Azure AD tertentu, di Azure Active Directory B2C (Azure AD B2C), Anda perlu membuat aplikasi di portal Microsoft Azure. Untuk informasi selengkapnya, lihat Daftarkan aplikasi dengan platform identitas Microsoft.

  1. Masuk ke portal Microsoft Azure.

  2. Pastikan Anda menggunakan direktori yang berisi penyewa Azure AD organisasi Anda (misalnya, Contoso):

    1. Pilih ikon Direktori + langganan di bilah alat portal.
    2. Pada Setelan portal | Direktori + langganan, temukan direktori Azure AD Anda di daftar Nama direktori, lalu pilih Beralih.
  3. Di portal Microsoft Azure, cari dan pilih Azure Active Directory.

  4. Di menu sebelah kiri, pada Kelola, pilih Pendaftaran aplikasi.

  5. Pilih + Pendaftaran baru.

  6. Masukkan Nama untuk aplikasi Anda. Contohnya:Azure AD B2C App

  7. Terima pilihan default Akun di direktori organisasi ini saja (Hanya Direktori Default - Penyewa tunggal) untuk aplikasi ini.

  8. Untuk URI Pengalihan, terima nilai Web, dan masukkan URL berikut di semua huruf kecil, di mana your-B2C-tenant-name diganti dengan nama penyewa Azure Active Directory B2C Anda.

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

    Contohnya:https://fabrikam.b2clogin.com/fabrikam.onmicrosoft.com/oauth2/authresp

    Jika Anda menggunakan domain kustom, masukkan https://your-domain-name/your-tenant-name.onmicrosoft.com/oauth2/authresp. Ganti your-domain-name dengan domain kustom Anda, dan your-tenant-name dengan nama penyewa Anda.

  9. Pilih Daftar. Rekam ID Aplikasi (klien) untuk digunakan di langkah selanjutnya.

  10. Pilih Sertifikat & rahasia, lalu pilih Rahasia klien baru.

  11. Masukkan Deskripsi untuk rahasia tersebut, pilih kedaluwarsa, lalu pilih Tambahkan. Rekam Nilai rahasia untuk digunakan di langkah selanjutnya.

Mengonfigurasi klaim opsional

Jika Anda ingin mendapatkan klaim family_name dan given_name dari Microsoft Azure AD, Anda dapat mengonfigurasi klaim opsional untuk aplikasi Anda di antarmuka pengguna portal Microsoft Azure atau manifes aplikasi. Untuk informasi selengkapnya, lihat Cara memberikan klaim opsional ke aplikasi Azure Active Directory Anda.

  1. Masuk ke portal Microsoft Azure menggunakan penyewa Microsoft Azure AD organisasi. Atau jika Anda sudah masuk, pastikan Anda menggunakan direktori yang berisi penyewa Azure AD organisasi Anda (misalnya, Contoso):
    1. Pilih ikon Direktori + langganan di bilah alat portal.
    2. Pada Setelan portal | Direktori + langganan, temukan direktori Azure AD Anda di daftar Nama direktori, lalu pilih Beralih.
  2. Di portal Microsoft Azure, cari dan pilih Azure Active Directory.
  3. Di menu sebelah kiri, pada Kelola, pilih Pendaftaran aplikasi.
  4. Pilih aplikasi yang ingin Anda konfigurasi klaim opsionalnya dalam daftar, seperti Azure AD B2C App.
  5. Dari bagian Kelola, pilih Konfigurasi token.
  6. Pilih Tambahkan klaim opsional.
  7. Untuk Jenis token, pilih ID.
  8. Pilih klaim opsional untuk ditambahkan, family_name dan given_name.
  9. Pilih Tambahkan. Jika Aktifkan izin profil Microsoft Graph (diperlukan agar klaim muncul di token) muncul, aktifkan, lalu pilih Tambahkan lagi.

[Opsional] Memverifikasi keaslian aplikasi Anda

Verifikasi penerbit membantu pengguna memahami keaslian aplikasi yang Anda daftarkan. Aplikasi terverifikasi berarti bahwa penerbit aplikasi telah memverifikasi identitas mereka menggunakan Microsoft Partner Network (MPN) mereka. Pelajari cara menandai aplikasi sebagai terverifikasi penerbit.

Konfigurasikan Azure Active Directory sebagai IdP

  1. Pastikan Anda menggunakan direktori yang berisi penyewa Azure AD B2C Anda. Pilih ikon Direktori + langganan di bilah alat portal.

  2. Pada Setelan portal | Direktori + langganan, temukan direktori Azure AD B2C Anda di daftar Nama direktori, lalu pilih Beralih.

  3. Pilih Semua layanan di pojok kiri atas portal Microsoft Azure, lalu cari dan pilih Azure AD B2C.

  4. Pilih Penyedia identitas, lalu pilih Penyedia OpenID Connect baru.

  5. Masukkan Nama. Misalnya, masukkan Contoso Microsoft Azure AD.

  6. Untuk url metadata, masukkan URL berikut mengganti {tenant} dengan nama domain penyewa Microsoft Azure AD Anda:

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

Contohnya:https://login.microsoftonline.com/contoso.onmicrosoft.com/v2.0/.well-known/openid-configuration Jika Anda menggunakan domain kustom, ganti contoso.comdengan domain kustom di https://login.microsoftonline.com/contoso.com/v2.0/.well-known/openid-configuration.

  1. Untuk ID Klien, masukkan ID aplikasi yang sebelumnya Anda rekam.

  2. Untuk Rahasia klien, masukkan rahasia klien yang Anda rekam sebelumnya.

  3. Untuk Cakupan, masukkan openid profile.

  4. Biarkan nilai default untuk Jenis respons, dan Mode respons.

  5. (Opsional) Untuk Petunjuk domain, masukkan contoso.com. Untuk informasi selengkapnya, lihat Menyiapkan masuk langsung menggunakan Azure Active Directory B2C.

  6. Di Pemetaan klaim IdP, pilih klaim berikut:

    • ID Pengguna: oid
    • Nama tampilan: nama
    • Nama pemberian: nama_pemberian
    • Nama belakang: nama_keluarga
    • Email: email
  7. Pilih Simpan.

Menambahkan IdP Azure Active Directory ke alur pengguna

Pada titik ini, IdP Azure Active Directory telah disiapkan, tetapi belum tersedia di salah satu halaman masuk. Untuk menambahkan IdP Azure Active Directory ke alur pengguna:

  1. Di penyewa AAD B2C Anda, pilih Alur pengguna.
  2. Pilih alur pengguna yang ingin Anda tambahkan IdP Azure Active Directory.
  3. Di bagian Pengaturan, pilih Identitas penyedia
  4. Di bawah Penyedia identitas kustom, pilih Contoso AAD.
  5. Pilih Simpan.
  6. Untuk menguji kebijakan Anda, pilih Jalankan alur pengguna.
  7. Untuk Aplikasi, pilih aplikasi web yang Anda daftarkan sebelumnya. URL Balasan akan menampilkan https://jwt.ms.
  8. Pilih tombol Jalankan alur pengguna.
  9. Dari halaman pendaftaran atau masuk, pilih Contoso Microsoft Azure AD untuk masuk dengan akun Contoso Microsoft Azure AD.

Jika proses masuk berhasil, browser Anda dialihkan ke https://jwt.ms, yang menampilkan konten token yang dikembalikan oleh Azure AD B2C.

Membuat kunci kebijakan

Anda perlu menyimpan kunci aplikasi yang Anda buat di penyewa Azure Active Directory B2C Anda.

  1. Pastikan Anda menggunakan direktori yang berisi penyewa AAD B2C Anda. Pilih ikon Direktori + langganan di bilah alat portal.
  2. Pada Setelan portal | Direktori + langganan, temukan direktori Azure AD B2C Anda di daftar Nama direktori, lalu pilih Beralih.
  3. Pilih Semua layanan di pojok kiri atas portal Microsoft Azure, lalu cari dan pilih Azure AD B2C.
  4. Di bawah Kebijakan, pilih IEF.
  5. Pilih Kunci kebijakan lalu pilih Tambahkan.
  6. Untuk Opsi, pilih Manual.
  7. Masukkan Nama untuk kunci kebijakan. Contohnya:ContosoAppSecret Prefiks B2C_1A_ ditambahkan secara otomatis ke nama kunci Anda saat dibuat, sehingga referensinya di XML di bagian berikut adalah untuk B2C_1A_ContosoAppSecre.
  8. Di Rahasia, masukkan rahasia klien Anda yang sebelumnya telah direkam.
  9. Untuk Penggunaan kunci, pilih Signature.
  10. Pilih Buat.

Konfigurasikan Azure Active Directory sebagai IdP

Untuk memungkinkan pengguna masuk menggunakan akun Azure Active Directory, Anda perlu menentukan Azure Active Directory sebagai penyedia klaim yang dapat dikomunikasikan dengan Azure Active Directory B2C melalui titik akhir. Titik akhir menyediakan serangkaian klaim yang digunakan oleh Azure AD B2C untuk memverifikasi bahwa pengguna tertentu telah diautentikasi.

Anda dapat menentukan Azure Active Directory sebagai penyedia klaim dengan menambahkannya ke elemen ClaimsProvider dalam file ekstensi kebijakan Anda.

  1. Buka file TrustFrameworkExtensions.xml.

  2. Temukan elemen ClaimsProviders. Jika tidak ada, tambahkan di bawah elemen akar.

  3. Tambahkan ClaimsProvider baru sebagai berikut:

    <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. Di bawah elemen ClaimsProvider, perbarui nilai untuk Domain ke nilai unik yang dapat digunakan untuk membedakannya dari IdP lain. Misalnya,Contoso. Anda tidak menempatkan .com di akhir pengaturan domain ini.

  5. Di bawah elemen ClaimsProvider, perbarui nilai untuk DisplayName ke nama yang ramah untuk penyedia klaim. Nilai ini saat ini tidak digunakan.

Memperbarui profil teknis

Untuk mendapatkan token dari titik akhir Azure Active Directory, Anda perlu menentukan protokol yang harus digunakan Azure AD B2C untuk berkomunikasi dengan Azure Active Directory. Hal ini dilakukan di dalam elemen TechnicalProfile dari ClaimsProvider.

  1. Perbarui ID dari elemen TechnicalProfile. ID ini digunakan untuk merujuk pada profil teknis ini dari bagian lain kebijakan, misalnya AADContoso-OpenIdConnect.
  2. Perbarui nilai untuk DisplayName. Nilai ini akan ditampilkan pada tombol masuk di layar masuk Anda.
  3. Perbarui nilai untuk Deskripsi.
  4. Azure Active Directory menggunakan protokol OpenID Connect, jadi pastikan nilai untuk Protokol adalah OpenIdConnect.
  5. Atur nilai METADATA ke https://login.microsoftonline.com/tenant-name.onmicrosoft.com/v2.0/.well-known/openid-configuration, dimana tenant-name adalah nama penyewa Azure Active Directory Anda. Contohnya, https://login.microsoftonline.com/contoso.onmicrosoft.com/v2.0/.well-known/openid-configuration
  6. Atur client_id ke id aplikasi dari pendaftaran aplikasi.
  7. Di bawah CryptographicKeys, perbarui nilai StorageReferenceId ke nama kunci kebijakan yang dibuat sebelumnya. Contohnya:B2C_1A_ContosoAppSecret

Menambahkan perjalanan pengguna

Pada tahap ini, penyedia identitas telah disiapkan, tetapi belum tersedia di halaman masuk mana pun. Jika Anda tidak memiliki perjalanan pengguna kustom Anda sendiri, buat duplikat perjalanan pengguna template yang sudah ada, jika tidak lanjutkan ke langkah berikutnya.

  1. Buka file TrustFrameworkBase.xml dari paket pemula.
  2. Temukan dan salin seluruh konten elemen UserJourney yang menyertakan Id="SignUpOrSignIn".
  3. Buka TrustFrameworkExtensions.xml dan temukan elemen UserJourneys. Jika elemen tersebut tidak ada, tambahkan.
  4. Tempelkan seluruh konten elemen UserJourney yang Anda salin sebagai anak dari elemen UserJourneys.
  5. Ganti nama Id perjalanan pengguna. Contohnya,Id="CustomSignUpSignIn".

Tambahkan penyedia identitas ke perjalanan pengguna

Sekarang setelah Anda memiliki perjalanan pengguna, tambahkan penyedia identitas baru ke perjalanan pengguna. Anda terlebih dahulu menambahkan tombol masuk, lalu tautkan tombol tersebut ke tindakan. Tindakan ini adalah profil teknis yang Anda buat sebelumnya.

  1. Dalam perjalanan pengguna, temukan elemen langkah orkestrasi yang mencakup Type="CombinedSignInAndSignUp" atau Type="ClaimsProviderSelection". Ini biasanya merupakan langkah orkestrasi pertama. Elemen ClaimsProviderSelections berisi daftar penyedia identitas yang dapat digunakan pengguna untuk masuk. Urutan elemen mengontrol urutan tombol masuk yang disajikan kepada pengguna. Tambahkan elemen XML ClaimsProviderSelection. Tetapkan nilai TargetClaimsExchangeId ke nama yang bersahabat.

  2. Pada langkah orkestrasi berikutnya, tambahkan elemen ClaimsExchange. Set Id ke nilai pertukaran klaim target Id. Perbarui nilai TechnicalProfileReferenceId ke Id profil teknis yang Anda buat sebelumnya.

XML berikut menunjukkan dua langkah orkestrasi pertama dari perjalanan pengguna dengan penyedia identitas:

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

Mengonfigurasi kebijakan pihak yang diandalkan

Kebijakan pihak yang diandalkan, misalnya SignUpSignIn.xml, menentukan perjalanan yang akan dijalankan Azure AD B2C. Temukan elemen DefaultUserJourney dalam pihak yang diandalkan. Perbarui ReferenceId agar sesuai dengan ID perjalanan, tempat Anda menambahkan IdP.

Dalam contoh berikut, untuk perjalanan CustomSignUpSignIn, ReferenceId diatur ke CustomSignUpSignIn:

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

Mengunggah kebijakan kustom

  1. Masuk ke portal Microsoft Azure.
  2. Pilih ikon Direktori + Langganan di toolbar portal, lalu pilih direktori yang berisi penyewa Azure AD B2C Anda.
  3. Di portal Microsoft Azure, cari dan pilih Azure AD B2C.
  4. Di Kebijakan, pilih IEF.
  5. Pilih Unggah Kebijakan Kustom, lalu unggah dua file kebijakan yang Anda ubah, dalam urutan berikut: kebijakan ekstensi, misalnya TrustFrameworkExtensions.xml, lalu kebijakan pihak yang diandalkan, seperti SignUpSignIn.xml.

Menguji kebijakan kustom Anda

  1. Pilih kebijakan pihak yang mengandalkan Anda, misalnya B2C_1A_signup_signin.
  2. Untuk Aplikasi, pilih aplikasi web yang Anda daftarkan sebelumnya. URL Balasan akan menampilkan https://jwt.ms.
  3. Pilih tombol Jalankan sekarang.
  4. Dari halaman pendaftaran atau masuk, pilih Karyawan Contoso untuk masuk dengan akun Contoso Microsoft Azure AD.

Jika proses masuk berhasil, browser Anda dialihkan ke https://jwt.ms, yang menampilkan konten token yang dikembalikan oleh Azure AD B2C.

Langkah berikutnya

Pelajari cara mengirimkan token Microsoft Azure AD ke aplikasi Anda.