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 dan Microsoft Entra 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:
- Membuat pendaftaran aplikasi di penyewa Anda Microsoft Entra
- Mengonfigurasikan izin API
- Mengonfigurasikan Klien Publik (opsional)
- Mengonfigurasikan Sertifikat dan Rahasia (opsional)
- 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 mencari berdasarkan GUID, mungkin Anda masih memiliki akses ke API tersebut tetapi visibilitasnya 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 sumber daya dan tindakan 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 Microsoft alur kode OAuth otorisasi platform identitas dan2.0.
Langkah 3. Mengonfigurasikan Klien Publik (opsional)
Jika aplikasi Anda memerlukan sumber daya baca dan tulis atas nama pengguna, Anda harus mengaktifkan setelan Klien Publik. Ini adalah satu-satunya cara ID Microsoft Entra menerima properti nama pengguna dan kata sandi di badan permintaan token Anda. Perhatikan juga, bahwa jika Anda berencana 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 dirinya sendiri - juga dikenal sebagai Service Principal, 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 untuk mengautentikasi dengan Microsoft Entra dan menerima token untuk klien ini, yang Anda teruskan 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 muatan 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 melakukan 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 melakukan 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