Bagikan melalui


Autentikasi (pratinjau)

Artikel ini memberikan gambaran umum penyiapan Microsoft Entra untuk memanggil Power Platform API (pratinjau). Untuk mengakses sumber daya yang tersedia melalui Power Platform API, Anda harus mendapatkan token pembawa dari Microsoft Entra dan mengirimkannya sebagai header bersama dengan setiap permintaan. Bergantung pada jenis identitas yang Anda dukung (pengguna vs perwakilan layanan), ada alur yang berbeda untuk mendapatkan token pembawa ini, seperti yang dijelaskan dalam artikel ini.

Langkah-langkah berikut diperlukan untuk mendapatkan token bearer dengan izin yang benar:

  1. Membuat pendaftaran aplikasi di penyewa Anda Microsoft Entra
  2. Mengonfigurasikan izin API
  3. Mengonfigurasikan Klien Publik (opsional)
  4. Mengonfigurasikan Sertifikat dan Rahasia (opsional)
  5. Meminta token akses

Langkah 1. Membuat pendaftaran aplikasi

Buka Microsoft Entra halaman pendaftaran aplikasi dan buat pendaftaran baru. Beri nama aplikasi, dan pastikan opsi Penyewa tunggal dipilih. Anda bisa melewati penyiapan URI pengalihan

Langkah 2. Mengonfigurasikan izin API

Dalam pendaftaran aplikasi baru Anda, buka tab Kelola-Izin API. Di bagian Konfigurasikan izin, pilih Tambahkan Izin. Di jendela dialog yang terbuka, pilih tab API yang digunakan organisasi saya, lalu cari API Power Platform. Anda mungkin melihat beberapa entri dengan nama yang mirip dengan ini, jadi pastikan Anda menggunakan entri dengan GUID 8578e004-a5c6-46e7-913e-12f58912df43.

Jika Anda tidak melihat Power Platform API muncul dalam daftar saat menelusuri berdasarkan GUID, mungkin Anda masih memiliki akses ke API tersebut tetapi visibilitas tidak disegarkan. Untuk memaksa melakukan refresh, jalankan skrip PowerShell di bawah ini:

#Install the Microsoft Entra the module
Install-Module AzureAD

Connect-AzureAD
New-AzureADServicePrincipal -AppId 8578e004-a5c6-46e7-913e-12f58912df43 -DisplayName "Power Platform API"

Dari sini, Anda harus memilih izin yang Anda butuhkan. Izin-izin ini dikelompokkan menurut Namespaces. Dalam namespace, Anda akan melihat jenis dan tindakan sumber daya misalnya AppManagement.ApplicationPackages.Read yang memberikan izin baca untuk paket aplikasi. Untuk informasi selengkapnya, lihat artikel referensi Izin kami .

Catatan

API Power Platform hanya menggunakan izin yang didelegasikan saat ini. Untuk aplikasi yang berjalan menggunakan konteks pengguna, Anda bisa meminta izin yang didelegasikan menggunakan parameter cakupan. Izin ini mendelegasikan hak istimewa pengguna yang masuk ke aplikasi Anda, memungkinkannya bertindak sebagai pengguna saat memanggil titik akhir API Power Platform.

Untuk identitas perwakilan layanan, izin aplikasi tidak digunakan. Sebagai gantinya, perwakilan layanan diperlakukan sebagai Administrator Power Platform hari ini dan harus didaftarkan dengan mengikuti PowerShell-Buat perwakilan layanan.

Setelah izin yang diperlukan ditambahkan ke aplikasi, pilih Berikan persetujuan admin untuk menyelesaikan penyiapan. Hal ini diperlukan jika Anda ingin mengizinkan pengguna untuk langsung mengakses aplikasi Anda. Bukan memerlukan pengalaman persetujuan interaktif. Jika Anda dapat mendukung persetujuan interaktif, sebaiknya ikuti Platform identitas Microsoft dan alur kode otorisasi OAuth 2.0.

Langkah 3. Mengonfigurasikan Klien Publik (opsional)

Jika aplikasi Anda memerlukan sumber daya baca dan tulis atas nama pengguna, Anda harus mengaktifkan pengaturan Klien Publik. Ini adalah satu-satunya cara Microsoft Entra ID menerima properti nama pengguna dan kata sandi di badan permintaan token Anda. Perhatikan juga, bahwa jika Anda berencana untuk menggunakan fitur ini, fitur ini tidak akan berfungsi untuk akun yang mengaktifkan autentikasi multifaktor.

Untuk mengaktifkan, buka tab Kelola-Autentikasi. Di bagian Pengaturan Tingkat Lanjut, atur tombol Klien Publik menjadi Ya.

Langkah 4. Mengonfigurasikan Sertifikat dan Rahasia (opsional)

Jika aplikasi Anda memerlukan sumber daya baca dan tulis sebagai sumber daya itu sendiri - juga dikenal sebagai Perwakilan Layanan, ada dua cara untuk mengautentikasi. Untuk menggunakan sertifikat, buka tab Kelola-Sertifikat dan Rahasia. Di bagian Sertifikat, unggah sertifikat x509 yang dapat Anda gunakan untuk mengautentikasi. Cara lainnya adalah menggunakan bagian Rahasia untuk membuat rahasia klien. Simpan rahasia di lokasi yang aman untuk digunakan dengan kebutuhan otomatisasi Anda. Opsi sertifikat atau rahasia memungkinkan Anda mengautentikasi dengan Microsoft Entra dan menerima token untuk klien ini, yang diteruskan ke cmdlet REST API atau PowerShell.

Langkah 5. Meminta token akses

Ada dua cara untuk mendapatkan token baerer akses. Satu untuk nama pengguna dan kata sandi, dan yang satunya untuk Perwakilan Layanan.

Alur nama pengguna dan kata sandi

Pastikan untuk membaca bagian Klien Publik di atas. Kemudian, kirim permintaan POST melalui HTTP ke Microsoft Entra ID dengan payload nama pengguna dan kata sandi.

Content-Type: application/x-www-form-urlencoded
Host: login.microsoftonline.com
Accept: application/json
POST https://login.microsoftonline.com/YOUR_TENANT.COM/oauth2/v2.0/token
BODY:
client_id={CLIENT_ID_FROM_AZURE_CLIENT_APP}&scope=https://api.powerplatform.com/.default&username={USER_EMAIL_ADDRESS}&password={PASSWORD}&grant_type=password

Contoh di atas berisi placeholder yang dapat Anda ambil dari aplikasi klien Anda di Microsoft Entra ID. Anda menerima respons yang dapat digunakan untuk membuat panggilan berikutnya ke Power Platform API.

{
  "token_type": "Bearer",
  "scope": "https://api.powerplatform.com/AppManagement.ApplicationPackages.Install https://api.powerplatform.com/AppManagement.ApplicationPackages.Read https://api.powerplatform.com/.default",
  "expires_in": 4747,
  "ext_expires_in": 4747,
  "access_token": "eyJ0eXAiOiJKV1QiLCJu..."
}

Gunakan nilai access_token dalam panggilan berikutnya ke API Power Platform dengan header HTTP Autorisasi.

Alur perwakilan layanan

Pastikan untuk membaca bagian Sertifikat dan Rahasia di atas. Kemudian, kirim permintaan POST melalui HTTP ke Microsoft Entra ID dengan payload rahasia klien. Ini sering disebut sebagai otentikasi prinsipal layanan.

Penting

Ini hanya dapat digunakan setelah Anda mendaftarkan ID aplikasi klien ini dengan Microsoft Power Platform mengikuti dokumentasi PowerShell atau REST terkait .

Content-Type: application/x-www-form-urlencoded
Host: login.microsoftonline.com
Accept: application/json
POST https://login.microsoftonline.com/YOUR_TENANT.COM/oauth2/v2.0/token
BODY:
client_id={CLIENT_ID_FROM_AZURE_CLIENT_APP}&scope=https://api.powerplatform.com/.default&client_secret={SECRET_FROM_AZURE_CLIENT_APP}&grant_type=client_credentials

Contoh di atas berisi placeholder yang dapat Anda ambil dari aplikasi klien Anda di Microsoft Entra ID. Anda menerima respons yang dapat digunakan untuk membuat panggilan berikutnya ke Power Platform API.

{
  "token_type": "Bearer",
  "expires_in": 3599,
  "ext_expires_in": 3599,
  "access_token": "eyJ0eXAiOiJKV1..."
}

Gunakan nilai access_token dalam panggilan berikutnya ke API Power Platform dengan header HTTP Autorisasi. Seperti disebutkan di atas, alur Perwakilan Layanan tidak menggunakan izin aplikasi dan sebagai gantinya, untuk saat ini, diperlakukan sebagai Power Platform Administrator untuk semua panggilan yang mereka lakukan.

Baca juga

Membuat aplikasi perwakilan layanan melalui API (pratinjau)
PowerShell-Membuat perwakilan layanan