Meneruskan token akses IdP ke aplikasi Anda di Azure Active Directory B2C

Sebelum Anda 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.

Alur pengguna di Azure Active Directory B2C (Azure AD B2C) memberi pengguna aplikasi Anda kesempatan untuk mendaftar atau masuk dengan IdP. Saat perjalanan dimulai, Azure AD B2C menerima token akses dari IdP. Azure AD B2C menggunakan token itu untuk mengambil informasi tentang pengguna. Anda mengaktifkan klaim di alur pengguna Anda untuk meneruskan token ke aplikasi yang Anda daftarkan di Azure AD B2C.

Azure AD B2C mendukung penerusan token akses IdP OAuth 2.0, yang mencakup Facebook dan Google. Untuk semua IdP lainnya, klaim dikembalikan kosong.

Azure AD B2C mendukung penerusan token akses IdP OAuth 2.0 dan OpenID Connect. Untuk semua IdP lainnya, klaim dikembalikan kosong. Untuk detail selengkapnya, lihat federasi penyedia identitas Demo langsung.

Diagram berikut menunjukkan bagaimana token IdP kembali ke aplikasi Anda:

Identity provider pass through flow

Prasyarat

Mengaktifkan klaim

  1. Masuk ke portal Microsoft Azure sebagai administrator global penyewa Azure AD B2C Anda.

  2. Pastikan Anda menggunakan direktori yang berisi penyewa AAD B2C Anda. Pilih ikon Direktori + langganan di bilah alat portal.

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

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

  5. Pilih Alur pengguna (kebijakan) , lalu pilih alur pengguna Anda. Misalnya, B2C_1_signupsignin1.

  6. Pilih Klaim aplikasi.

  7. Aktifkan klaim Token Akses IdP.

    Enable the Identity Provider Access Token claim

  8. Klik Simpan untuk menyimpan alur pengguna.

Menguji alur pengguna

Saat menguji aplikasi Anda di Azure AD B2C, sebaiknya minta token Azure AD B2C dikembalikan ke https://jwt.ms untuk meninjau klaim di dalamnya.

  1. Di halaman Gambaran Umum alur pengguna, pilih Jalankan alur pengguna.

  2. Untuk Aplikasi, pilih aplikasi Anda yang sebelumnya Anda daftarkan. Untuk melihat token pada contoh di bawah ini, URL Balasan akan menampilkan https://jwt.ms.

  3. Klik Jalankan alur pengguna, lalu masuk dengan informasi masuk akun Anda. Anda akan melihat token akses IdP di klaim idp_access_token.

    Anda akan melihat sesuatu yang mirip dengan contoh berikut:

    Decoded token in jwt.ms with idp_access_token block highlighted

Menambahkan elemen klaim

  1. Buka file TrustframeworkExtensions.xml Anda dan tambahkan elemen ClaimType berikut dengan pengidentifikasi identityProviderAccessToken ke elemen ClaimsSchema:

    <BuildingBlocks>
      <ClaimsSchema>
        <ClaimType Id="identityProviderAccessToken">
          <DisplayName>Identity Provider Access Token</DisplayName>
          <DataType>string</DataType>
          <AdminHelpText>Stores the access token of the identity provider.</AdminHelpText>
        </ClaimType>
        ...
      </ClaimsSchema>
    </BuildingBlocks>
    
  2. Tambahkan elemen OutputClaim ke elemen TechnicalProfile untuk setiap IdP OAuth 2.0 yang Anda inginkan token aksesnya. Contoh berikut menunjukkan elemen yang ditambahkan ke profil teknis Facebook:

    <ClaimsProvider>
      <DisplayName>Facebook</DisplayName>
      <TechnicalProfiles>
        <TechnicalProfile Id="Facebook-OAUTH">
          <OutputClaims>
            <OutputClaim ClaimTypeReferenceId="identityProviderAccessToken" PartnerClaimType="{oauth2:access_token}" />
          </OutputClaims>
          ...
        </TechnicalProfile>
      </TechnicalProfiles>
    </ClaimsProvider>
    
  3. Simpan file TrustframeworkExtensions.xml.

  4. Buka file kebijakan pihak yang mengandalkan, seperti SignUpOrSignIn.xml, dan tambahkan elemen OutputClaim ke TechnicalProfile:

    <RelyingParty>
      <DefaultUserJourney ReferenceId="SignUpOrSignIn" />
      <TechnicalProfile Id="PolicyProfile">
        <OutputClaims>
          <OutputClaim ClaimTypeReferenceId="identityProviderAccessToken" PartnerClaimType="idp_access_token"/>
        </OutputClaims>
        ...
      </TechnicalProfile>
    </RelyingParty>
    
  5. Simpan file kebijakan.

Uji kebijakan Anda

Saat menguji aplikasi Anda di Azure AD B2C, akan berguna jika token Azure AD B2C ditampilkan ke https://jwt.ms untuk dapat meninjau klaim di dalamnya.

Unggah file

  1. Masuk ke portal Microsoft Azure.
  2. Pastikan Anda menggunakan direktori yang berisi penyewa AAD B2C Anda. Pilih ikon Direktori + langganan di bilah alat portal.
  3. Pada Setelan portal | Direktori + langganan, temukan direktori Azure AD B2C Anda di daftar Nama direktori, lalu pilih Beralih.
  4. Pilih Semua layanan di pojok kiri atas portal Microsoft Azure, lalu cari dan pilih Azure AD B2C.
  5. Pilih IEF.
  6. Pada halaman Kebijakan Kustom, klik Kebijakan Unggah.
  7. Pilih Timpa kebijakan jika ada, lalu telusuri dan pilih file TrustframeworkExtensions.xml.
  8. Pilih Unggah.
  9. Ulangi langkah 5 sampai 7 untuk file pihak berkepentingan, seperti SignUpOrSignIn.xml.

Jalankan kebijakannya

  1. Buka kebijakan yang Anda ubah. Misalnya, B2C_1A_signup_signin.

  2. Untuk Aplikasi, pilih aplikasi Anda yang sebelumnya Anda daftarkan. Untuk melihat token pada contoh di bawah ini, URL Balasan akan menampilkan https://jwt.ms.

  3. Pilih Jalankan sekarang.

    Anda akan melihat sesuatu yang mirip dengan contoh berikut:

    Decoded token in jwt.ms with idp_access_token block highlighted

Langkah berikutnya

Pelajari lebih lanjut di gambaran umum token Azure AD B2C.