Bagikan melalui


Gambaran umum ekstensi autentikasi kustom

Artikel ini menyediakan gambaran umum teknis tingkat tinggi tentang ekstensi autentikasi kustom untuk ID Microsoft Entra. Ekstensi autentikasi kustom memungkinkan Anda menyesuaikan pengalaman autentikasi Microsoft Entra dengan mengintegrasikan dengan sistem eksternal.

Diagram berikut menggambarkan alur masuk yang terintegrasi dengan ekstensi autentikasi kustom.

Diagram yang menunjukkan token yang ditambahkan dengan klaim dari sumber eksternal.

  1. Pengguna mencoba masuk ke aplikasi dan dialihkan ke halaman masuk Microsoft Entra.
  2. Setelah pengguna menyelesaikan langkah tertentu dalam autentikasi, pendengar peristiwa dipicu.
  3. Ekstensi autentikasi kustom Anda mengirimkan permintaan HTTP ke titik akhir REST API Anda. Permintaan berisi informasi tentang peristiwa, profil pengguna, data sesi, dan informasi konteks lainnya.
  4. REST API melakukan alur kerja kustom.
  5. REST API mengembalikan respons HTTP ke ID Microsoft Entra.
  6. Ekstensi autentikasi kustom Microsoft Entra memproses respons dan menyesuaikan autentikasi berdasarkan jenis peristiwa dan payload respons HTTP.
  7. Token dikembalikan ke aplikasi.

Titik akhir REST API ekstensi autentikasi kustom

Saat peristiwa diaktifkan, ID Microsoft Entra memanggil titik akhir REST API yang Anda miliki. Permintaan ke REST API berisi informasi tentang peristiwa, profil pengguna, data permintaan autentikasi, dan informasi konteks lainnya.

Anda dapat menggunakan bahasa pemrograman, kerangka kerja, dan lingkungan hosting apa pun untuk membuat dan menghosting REST API ekstensi autentikasi kustom Anda. Untuk cara cepat memulai, gunakan C# Azure Function. Azure Functions memungkinkan Anda menjalankan kode di lingkungan tanpa server dan tidak perlu membuat komputer virtual (VM) atau menerbitkan aplikasi web terlebih dahulu.

REST API Anda harus menangani:

  • Validasi token untuk mengamankan panggilan REST API.
  • Logika bisnis
  • Validasi permintaan HTTP masuk dan keluar dan skema respons.
  • Audit dan pengelogan.
  • Ketersediaan, performa, dan kontrol keamanan.

Untuk pengembang yang menjalankan REST API di Azure Functions, pertimbangkan untuk menggunakan pustaka NuGet Microsoft.Azure.WebJobs.Extensions.AuthenticationEvents , yang membantu implementasi validasi token menggunakan kemampuan autentikasi bawaan Microsoft Azure. Ini menyediakan model data untuk berbagai jenis peristiwa, memulai permintaan masuk dan keluar dan pemrosesan respons, sehingga lebih banyak fokus dapat diletakkan pada logika bisnis.

Lindungi REST API Anda

Untuk memastikan komunikasi antara ekstensi autentikasi kustom dan REST API Anda diamankan dengan tepat, beberapa kontrol keamanan harus diterapkan.

  1. Saat ekstensi autentikasi kustom memanggil REST API Anda, ekstensi ini mengirim header HTTP Authorization dengan token pembawa yang dikeluarkan oleh ID Microsoft Entra.
  2. Token pembawa berisi appid klaim atau azp . Validasi bahwa klaim masing-masing berisi 99045fe1-7639-4a75-9d4a-577b6ca3810f nilai . Nilai ini memastikan bahwa ID Microsoft Entra adalah orang yang memanggil REST API.
    1. Untuk Aplikasi V1 , validasi appid klaim.
    2. Untuk Aplikasi V2 , validasi azp klaim.
  3. Klaim audiens token aud pembawa berisi ID pendaftaran aplikasi terkait. Titik akhir REST API Anda perlu memvalidasi bahwa token pembawa dikeluarkan untuk audiens tertentu tersebut.
  4. Klaim penerbit token iss pembawa berisi URL penerbit Microsoft Entra. Bergantung pada konfigurasi penyewa Anda, URL penerbit akan menjadi salah satu hal berikut;
    • Tenaga kerja: https://login.microsoftonline.com/{tenantId}/v2.0.
    • Pelanggan: https://{domainName}.ciamlogin.com/{tenantId}/v2.0.

Penyedia klaim kustom

Penyedia klaim kustom adalah jenis ekstensi autentikasi kustom yang memanggil REST API untuk mengambil klaim dari sistem eksternal. Penyedia klaim kustom memetakan klaim dari sistem eksternal ke dalam token dan dapat ditetapkan ke satu atau banyak aplikasi di direktori Anda.

Pelajari selengkapnya tentang penyedia klaim kustom.

Pengumpulan atribut memulai dan mengirimkan peristiwa

Pengumpulan atribut memulai dan mengirimkan peristiwa dapat digunakan dengan ekstensi autentikasi kustom untuk menambahkan logika sebelum dan sesudah atribut dikumpulkan dari pengguna. Misalnya, Anda dapat menambahkan alur kerja untuk memvalidasi atribut yang dimasukkan pengguna selama pendaftaran. Peristiwa OnAttributeCollectionStart terjadi di awal langkah pengumpulan atribut, sebelum halaman pengumpulan atribut dirender. Ini memungkinkan Anda menambahkan tindakan seperti nilai pra-pengisian dan menampilkan kesalahan pemblokiran. Peristiwa OnAttributeCollectionSubmit memicu setelah pengguna memasukkan dan mengirimkan atribut, memungkinkan Anda menambahkan tindakan seperti memvalidasi entri atau memodifikasi atribut.

Catatan

Pengumpulan atribut memulai dan mengirimkan peristiwa saat ini hanya tersedia untuk alur pengguna di MICROSOFT Entra External ID di penyewa eksternal. Untuk detailnya, lihat Menambahkan logika bisnis Anda sendiri.

Lihat juga