Bagikan melalui


Menyiapkan penyedia OpenID Connect

Penyedia identitas OpenID Connect adalah layanan yang sesuai dengan spesifikasi Open ID Connect. OpenID Connect memperkenalkan konsep token ID. Token ID merupakan token keamanan yang memungkinkan klien untuk memverifikasi identitas pengguna. Token ID juga mendapatkan informasi profil dasar tentang pengguna, yang dikenal sebagai klaim.

Penyedia OpenID Connect Microsoft Entra External ID, Microsoft Entra ID, dan Microsoft Entra ID dengan beberapa penyewa terintegrasi dalam Power Pages. Artikel ini menjelaskan cara menambahkan penyedia identitas OpenID Connect lainnya ke situs Power Pages Anda.

Alur autentikasi yang didukung dan tidak didukung di Power Pages

  • Izin Implisit
    • Alur ini adalah metode otentikasi default untuk situs Power Pages.
  • Kode Otorisasi
    • Power Pages menggunakan metode client_secret_post untuk berkomunikasi dengan titik akhir token server identitas.
    • Metode private_key_jwt untuk mengautentikasi dengan titik akhir token tidak didukung.
  • Hibrid (dukungan terbatas)
    • Power Pages mewajibkan token id hadir dalam respons sehingga response_type = token kode tidak didukung.
    • Aliran Hibrid di Power Pages mengikuti alur yang sama seperti alur Izin Implisit, dan menggunakan id_token untuk secara langsung memasukkan pengguna.
  • Kunci Bukti untuk Exchange Kode (PKCE)
    • Teknik berbasis PKCE untuk mengotentikasi pengguna tidak didukung.

Catatan

Perubahan pengaturan otentikasi situs Anda mungkin memerlukan beberapa menit agar dapat diterapkan di situs. Untuk segera melihat perubahan, mulai ulang situs di pusat admin.

Menyiapkan penyedia OpenID Connect di Power Pages

  1. Di situs Power Pages Anda, pilih Keamanan>Penyedia Keamanan.

    Jika tidak ada penyedia identitas yang muncul, periksa apakah Login eksternal disetel ke Aktif di setelan autentikasi umum situs Anda.

  2. Pilih + penyedia baru.

  3. Di Pilih penyedia masuk, pilih Lainnya.

  4. Di Protokol, pilih OpenID Connect.

  5. Masukkan nama untuk penyedia.

    Nama penyedia adalah teks pada tombol yang dilihat pengguna saat mereka memilih penyedia identitas mereka di halaman masuk.

  6. Pilih Selanjutnya.

  7. Dalam URL Balasan, pilih Salin.

    Jangan tutup tab browser Power Pages Anda. Anda segera kembali ke sana.

Membuat pendaftaran aplikasi di penyedia identitas

  1. Buat dan daftarkan aplikasi dengan penyedia identitas menggunakan URL balasan yang Disalin.

  2. Salin aplikasi atau ID klien dan rahasia klien.

  3. Temukan titik akhir aplikasi, lalu salin URL dokumen metadata OpenID Connect.

  4. Ubah pengaturan lain jika diperlukan untuk penyedia identitas Anda.

Masukkan pengaturan situs di Power Pages

Kembali ke halaman Konfigurasikan penyedia identitas Power Pages yang telah Anda tinggalkan sebelumnya, lalu masukkan nilai berikut. Atau, ubah pengaturan tambahan jika diperlukan. Pilih Konfirmasi setelah selesai.

  • Otoritas: Masukkan URL badan hukum dalam format berikut: https://login.microsoftonline.com/<Directory (tenant) ID>/, di mana <ID Direktori (penyewa)> adalah ID direktori (penyewa) aplikasi yang Anda buat. Contohnya, jika id direktori (penyewa) di portal Azure adalah aaaabbbb-0000-cccc-1111-dddd2222eeee, maka URL otoritasnya adalah https://login.microsoftonline.com/aaaabbbb-0000-cccc-1111-dddd2222eeee/​.

  • ID klien​: Rekatkan ID aplikasi atau klien aplikasi yang dibuat sebelumnya.

  • URL Pengalihan: Jika situs Anda menggunakan nama domain kustom, masukkan URL kustom; jika tidak, biarkan nilai default. Pastikan nilainya sama persis dengan URI pengalihan aplikasi yang Anda buat.

  • Alamat metadata: Rekatkan URL dokumen metadata OpenID Connect yang Disalin.

  • Cakupan: Masukkan cakupan yang dipisahkan spasi untuk meminta dengan parameter scope OpenID Connect. Nilai default adalah openid.

    Nilai openid adalah wajib. Pelajari tentang klaim lain yang dapat Anda tambahkan.

  • Jenis respons: Masukkan nilai parameter response_type OpenID Connect. Nilai yang mungkin mencakup code, code id_token, id_token, id_token token, dan code id_token token. Nilai default adalah code id_token.

  • Rahasia klien: Rekatkan rahasia klien dari aplikasi penyedia. Ini mungkin juga dapat disebut sebagai rahasia aplikasi atau rahasia pelanggan. Pengaturan ini diperlukan jika jenis respons adalah code.

  • Mode respons: Nilai untuk parameter response_mode OpenID Connect. Ini harus berupa query jika jenis respons adalah code. Nilai default adalah form_post.

  • Logout eksternal: Pengaturan ini mengontrol apakah situs Anda menggunakan keluar gabungan. Dengan daftar keluar federasi, bila pengguna keluar dari aplikasi atau situs, mereka juga keluar dari semua aplikasi dan situs yang menggunakan penyedia identitas yang sama. Aktifkan untuk mengalihkan pengguna ke pengalaman keluar federasi saat mereka keluar dari situs web. Aktifkan untuk mengeluarkan pengguna dari situs web.

  • URL pengalihan pasca keluar: Masukkan URL di mana penyedia identitas harus mengalihkan pengguna setelah mereka keluar. Lokasi ini juga harus ditetapkan dengan tepat dalam konfigurasi penyedia identitas.

  • Logout yang diawali RP: Pengaturan ini mengontrol apakah pihak yang mengandalkan—aplikasi klien OpenID Connect—dapat mengeluarkan pengguna. Untuk menggunakan pengaturan ini, aktifkan Keluar eksternal.

Pengaturan tambahan di Power Pages

Pengaturan tambahan memberikan kontrol yang lebih baik atas cara otentikasi pengguna dengan penyedia identitas OpenID Connect Anda. Anda tidak perlu menetapkan nilai ini. Semuanya opsional.

  • Filter penerbit: Pengaturan situs berbasis wildcard yang sesuai pada semua penerbit di semua penyewa, misalnya https://sts.windows.net/*/. Jika Anda menggunakan penyedia autentikasi Microsoft Entra ID, filter URL penerbit adalah https://login.microsoftonline.com/*/v2.0/.

  • Validasikan audiens: Aktifkan pengaturan ini untuk memvalidasi audiens selama validasi token.

  • Autentikasi valid: Masukkan Sebuah daftar URL audiens yang dipisahkan koma.

  • Validasi penerbit: Aktifkan pengaturan ini untuk memvalidasi penerbit selama validasi token.

  • Penerbit valid: Masukkan Sebuah daftar URL penerbit yang dipisahkan koma.

  • Pemetaan klaim pendaftaran​ dan Pemetaan klaim Login: Dalam otentikasi pengguna, klaim adalah informasi yang mendeskripsikan identitas pengguna, seperti alamat email atau tanggal lahir. Saat Anda masuk ke aplikasi atau situs web, log in akan membuat token. Token berisi informasi tentang identitas Anda, termasuk klaim yang terkait. Token digunakan untuk mengautentikasi identitas Anda saat Anda mengakses bagian lain dari aplikasi atau situs, atau aplikasi dan situs lain yang tersambung ke penyedia identitas yang sama. Pemetaan klaim adalah cara mengubah informasi yang tercakup dalam token. Tombol tersebut dapat digunakan untuk menyesuaikan informasi yang tersedia di aplikasi atau situs dan mengontrol akses ke fitur atau data. Pemetaan klaim pendaftaran mengubah klaim yang diterbitkan saat Anda mendaftar untuk aplikasi atau situs. Pemetaan klaim login mengubah klaim yang diterbitkan saat Anda masuk ke aplikasi atau situs. Selengkapnya tentang kebijakan pemetaan klaim.

    Informasi pengguna dapat diberikan dalam dua cara:

    • Klaim Token ID – Atribut pengguna dasar seperti nama depan atau email ada di token.
    • Titik Akhir UserInfo – API aman yang mengembalikan informasi pengguna terperinci setelah autentikasi.

    Untuk menggunakan titik akhir UserInfo, buat Pengaturan Situs bernama Authentication/OpenIdConnect/{ProviderName}/UseUserInfoEndpointforClaims dan atur nilainya ke true.

    Atau, buat pengaturan situs bernama Authentication/OpenIdConnect/{ProviderName}/UserInfoEndpoint dan atur nilainya ke URL titik akhir UserInfo. Jika Anda tidak menyediakan pengaturan ini, Power Pages mencoba menemukan titik akhir dari metadata OIDC.

    Penanganan kesalahan:

    • Jika URL titik akhir tidak diatur dan Power Pages tidak dapat menemukannya di metadata, masuk dilanjutkan dan mencatat peringatan.
    • Jika URL ditetapkan tetapi tidak dapat diakses, login dilanjutkan dengan peringatan.
    • Jika titik akhir mengembalikan kesalahan autentikasi (seperti 401 atau 403), masuk dilanjutkan dengan peringatan yang menyertakan pesan kesalahan.

    Sintaks pemetaan:

    Untuk menggunakan klaim UserInfo dalam pemetaan klaim login atau pendaftaran, gunakan format ini:

    fieldName = userinfo.claimName

    Jika UseUserInfoEndpointforClaims tidak diaktifkan, pemetaan yang menggunakan awalan userinfo. akan diabaikan.

  • Masa berlaku nonce: Masukkan masa berlaku dari nilai nonce, dalam menit. Nilai default adalah 10 menit.

  • Gunakan masa berlaku token: Pengaturan ini mengontrol apakah masa aktif sesi autentikasi (misalnya cookie) harus sesuai dengan token autentikasi. Jika Anda mengaktifkannya, nilai ini akan menimpa nilai Rentang Waktu Kedaluwarsa Cookie Aplikasi di pengaturan situs Authentication/ApplicationCookie/ExpireTimeSpan.

  • Pemetaan kontak dengan email: Pengaturan ini menentukan apakah kontak dipetakan ke alamat email yang terkait jika mereka masuk.

    • Aktif, Mengaitkan rekaman kontak unik dengan alamat email yang cocok, dan kemudian secara otomatis menetapkan penyedia identitas eksternal ke kontak setelah pengguna berhasil masuk.
    • Tidak aktif

Catatan

Parameter permintaan UI_Locales akan dikirim secara otomatis dalam permintaan otentikasi dan diatur ke bahasa yang dipilih di portal.

Parameter otorisasi lainnya

Gunakan parameter otorisasi berikut, tetapi jangan mengaturnya dalam penyedia OpenID Connect di Power Pages:

  • acr_values: Parameter acr_values memungkinkan penyedia identitas menerapkan tingkat jaminan keamanan seperti autentikasi multifaktor (MFA). Ini memungkinkan aplikasi menunjukkan tingkat otentikasi yang diperlukan.

    Untuk menggunakan parameter acr_values, buat pengaturan situs bernama Autentikasi/OpenIdConnect/{ProviderName}/AcrValues dan atur nilai yang Anda butuhkan. Saat Anda mengatur nilai ini, Power Pages menyertakan parameter acr_values dalam permintaan otorisasi.

  • Parameter otorisasi dinamis: Parameter dinamis memungkinkan Anda menyesuaikan permintaan otorisasi untuk konteks penggunaan yang berbeda, seperti aplikasi yang disematkan atau beberapa skenario penyewa.

    • Parameter prompt:

      Parameter ini mengontrol apakah halaman masuk atau layar izin muncul. Untuk menggunakannya, tambahkan penyesuaian untuk mengirimkannya sebagai parameter string kueri ke titik akhir ExternalLogin.

      Nilai yang didukung:

      • tidak ada
      • login
      • persetujuan
      • select_account

      Format URL:

      {PortalUrl}/Account/Login/ExternalLogin?ReturnUrl=%2F&provider={ProviderName}&prompt={value}

      Power Pages mengirimkan nilai ini ke penyedia identitas dalam parameter prompt.

    • Parameter petunjuk login:

      Parameter ini memungkinkan Anda meneruskan ID pengguna yang diketahui, seperti email, untuk mengisi atau mengabaikan layar login. Untuk menggunakannya, tambahkan penyesuaian untuk mengirimkannya sebagai parameter string kueri ke titik akhir ExternalLogin.

      Format URL:

      {PortalUrl}/Account/Login/ExternalLogin?ReturnUrl=%2F&provider={ProviderName}&login_hint={value}

      Ini membantu ketika pengguna sudah masuk melalui identitas lain, seperti Microsoft Entra ID atau akun Microsoft (MSA), dalam sesi yang sama.

  • Parameter otorisasi kustom: Beberapa penyedia identitas mendukung parameter kepemilikan untuk perilaku otorisasi tertentu. Power Pages mengizinkan pembuat mengatur dan meneruskan parameter ini dengan aman. Untuk menggunakan parameter ini, tambahkan penyesuaian untuk mengirimkannya sebagai parameter string kueri ke titik akhir ExternalLogin.

    Buat pengaturan situs bernama Authentication/OpenIdConnect/{Provider}/AllowedDynamicAuthorizationParameters dan atur nilainya ke daftar nama parameter yang dipisahkan koma, seperti param1,param2,param3.

    Contoh format URL:

    {PortalUrl}/Account/Login/ExternalLogin?ReturnUrl=%2F&provider={ProviderName}&param1=value&param2=value&param3=value

    Jika salah satu parameter (param1, param2, atau param3) tidak ada dalam daftar parameter yang diizinkan, Power Pages mengabaikannya.

    Pengaturan ini menentukan daftar parameter kustom yang dapat dikirim dalam permintaan otorisasi.

    Perilaku

    • Teruskan parameter dalam string kueri titik akhir ExternalLogin.
    • Power Pages hanya menyertakan parameter dalam daftar dalam permintaan otorisasi.
    • Parameter default seperti prompt, login_hint, dan ReturnUrl selalu diizinkan dan tidak perlu dicantumkan.

    Contoh format URL:

    {PortalUrl}/Account/Login/ExternalLogin?ReturnUrl=%2F&provider={ProviderName}&custom_param=value

    Jika custom_param tidak ada dalam daftar parameter yang diizinkan, Power Pages mengabaikannya.

Baca juga

Menyiapkan ID Eksternal Microsoft Entra dengan Power Pages
Menyiapkan penyedia OpenID Connect dengan Microsoft Entra ID
Tanya Jawab Umum OpenID Connect