Mulai cepat: Mengonfigurasi aplikasi klien untuk mengakses API web
Di mulai cepat ini, Anda menyediakan aplikasi klien yang terdaftar dengan platform identitas Microsoft dengan akses tercakup berbasis izin ke API web Anda sendiri. Anda juga menyediakan akses aplikasi klien ke Microsoft Graph.
Dengan menentukan cakupan API web dalam pendaftaran aplikasi klien Anda, aplikasi klien dapat memperoleh token akses yang berisi cakupan tersebut dari platform identitas Microsoft. Dalam kodenya, API web kemudian dapat memberikan akses berbasis izin ke sumber dayanya berdasarkan cakupan yang ditemukan dalam token akses.
Prasyarat
- Akun Azure dengan langganan aktif. Buat akun secara gratis.
- Penyelesaian Mulai Cepat: Mendaftarkan aplikasi
- Penyelesaian Mulai Cepat: Mengonfigurasi aplikasi untuk mengekspos API web
Menambahkan izin untuk mengakses API web Anda
Tip
Langkah-langkah dalam artikel ini mungkin sedikit berbeda berdasarkan portal tempat Anda memulai.
Akses ke API memerlukan konfigurasi cakupan dan peran akses. Jika Anda ingin mengekspos API web aplikasi sumber daya ke aplikasi klien, Anda dapat mengonfigurasi cakupan akses dan peran untuk API. Jika Anda ingin aplikasi klien mengakses API web, Anda mengonfigurasi izin untuk mengakses API dalam pendaftaran aplikasi.
Untuk memberikan aplikasi klien akses ke API web Anda sendiri, Anda harus memiliki dua pendaftaran aplikasi;
- Pendaftaran aplikasi klien
- Pendaftaran API web dengan cakupan yang diekspos
Diagram menunjukkan bagaimana dua pendaftaran aplikasi berhubungan satu sama lain, di mana aplikasi klien memiliki jenis izin yang berbeda dan API web memiliki cakupan yang berbeda yang dapat diakses aplikasi klien. Di bagian ini, Anda menambahkan izin ke pendaftaran aplikasi klien.
Setelah mendaftarkan aplikasi klien dan API web dan telah mengekspos API dengan membuat cakupan, Anda dapat mengonfigurasi izin klien ke API dengan mengikuti langkah-langkah berikut:
Masuk ke pusat admin Microsoft Entra sebagai setidaknya Administrator Aplikasi Cloud.
Jika Anda memiliki akses ke beberapa penyewa, gunakan ikon Pengaturan di menu atas untuk beralih ke penyewa yang berisi pendaftaran aplikasi dari menu Direktori + langganan.
Telusuri ke Aplikasi> Identitas>Pendaftaran aplikasi, lalu pilih aplikasi klien Anda (bukan API web Anda).
Pilih izin API, lalu Tambahkan izin dan pilih API Saya di bar samping.
Pilih API web yang Anda daftarkan sebagai bagian dari prasyarat, dan pilih Izin yang didelegasikan.
Izin yang didelegasikan sesuai untuk aplikasi klien yang mengakses API web sebagai pengguna yang masuk, dan yang aksesnya harus dibatasi untuk izin yang Anda pilih di langkah berikutnya. Biarkan izin yang didelegasikan dipilih untuk contoh ini.
Izin aplikasi adalah untuk aplikasi jenis layanan atau daemon yang perlu mengakses API web sebagai milik mereka sendiri, tanpa interaksi pengguna untuk masuk atau menyetujui. Kecuali Anda telah menentukan peran aplikasi untuk API web Anda, opsi ini dinonaktifkan.
Di bawah Pilih izin, perluas sumber daya yang cakupannya Anda tentukan untuk API web Anda, dan pilih izin yang harus miliki aplikasi klien atas nama pengguna yang masuk.
- Jika Anda menggunakan contoh nama cakupan yang ditentukan dalam mulai cepat sebelumnya, Anda akan melihat Employees.Read.All dan
Employees.Write.All
.
- Jika Anda menggunakan contoh nama cakupan yang ditentukan dalam mulai cepat sebelumnya, Anda akan melihat Employees.Read.All dan
Pilih izin yang Anda buat saat menyelesaikan prasyarat, misalnya,
Employees.Read.All
.Pilih Tambahkan izin untuk menyelesaikan proses.
Setelah menambahkan izin ke API, Anda akan melihat izin yang dipilih di bawah Izin yang dikonfigurasi. Gambar berikut menunjukkan contoh Employees.Read.All izin yang didelegasikan ditambahkan ke pendaftaran aplikasi klien.
Anda mungkin juga melihat izin User.Read untuk Microsoft Graph API. Izin ini ditambahkan secara otomatis saat Anda mendaftarkan aplikasi di portal Microsoft Azure.
Menambahkan izin untuk mengakses Microsoft Graph
Selain mengakses API web Anda sendiri atas nama pengguna yang masuk, aplikasi Anda mungkin juga perlu mengakses atau memodifikasi data pengguna (atau lainnya) yang disimpan di Microsoft Graph. Atau Anda mungkin memiliki aplikasi layanan atau daemon yang perlu mengakses Microsoft Graph seperti itu sendiri, melakukan operasi tanpa interaksi pengguna.
Izin yang didelegasikan ke Microsoft Graph
Konfigurasikan izin yang didelegasikan ke Microsoft Graph untuk memungkinkan aplikasi klien Anda melakukan operasi atas nama pengguna yang masuk, misalnya membaca email mereka atau memodifikasi profil mereka. Secara default, pengguna aplikasi klien Anda akan ditanya ketika mereka masuk untuk menyetujui izin yang didelegasikan yang telah Anda konfigurasi untuk aplikasi tersebut.
Dari halaman Gambaran Umum aplikasi klien Anda, pilih Izin>API Tambahkan izin>Microsoft Graph
Pilih Izin yang didelegasikan. Microsoft Graph memaparkan banyak izin, dengan yang paling umum digunakan diperlihatkan di bagian atas daftar.
Di bawah Pilih izin, pilih izin berikut ini:
Izin Deskripsi email
Melihat alamat email pengguna offline_access
Mempertahankan akses ke data yang aksesnya telah Anda berikan openid
Memasukkan pengguna profile
Lihat profil dasar pengguna Pilih Tambahkan izin untuk menyelesaikan proses.
Setiap kali Anda mengonfigurasi izin, pengguna aplikasi Diminta login untuk persetujuan mereka agar aplikasi Anda dapat mengakses API resource atas nama mereka.
Sebagai admin, Anda juga dapat memberikan persetujuan atas nama semua pengguna sehingga mereka tidak diminta untuk melakukannya. Persetujuan admin dibahas nanti di bagian Lainnya tentang izin API dan persetujuan admin di artikel ini.
Izin aplikasi ke Microsoft Graph
Mengonfigurasi izin aplikasi untuk aplikasi yang perlu diautentikasi sendiri tanpa interaksi atau persetujuan pengguna. Izin aplikasi biasanya digunakan oleh layanan latar belakang atau aplikasi daemon yang mengakses API dengan cara "tanpa kepala", dan oleh API web yang mengakses API (hilir) lain.
Di langkah-langkah berikut, Anda memberikan izin ke Files.Read.AllMicrosoft Graph sebagai contoh.
- Masuk ke pusat admin Microsoft Entra sebagai setidaknya Administrator Aplikasi Cloud.
- Jika Anda memiliki akses ke beberapa penyewa, gunakan ikon Pengaturan di menu atas untuk beralih ke penyewa yang berisi pendaftaran aplikasi dari menu Direktori + langganan.
- Telusuri Aplikasi >Identitas>Pendaftaran aplikasi, lalu pilih aplikasi klien Anda.
- Pilih izin API>Tambahkan izin>Izin Aplikasi>Microsoft Graph.
- Semua izin yang diekspos oleh Microsoft Graph diperlihatkan di bawah Pilih izin.
- Pilih izin atau izin yang ingin Anda berikan kepada aplikasi Anda. Sebagai contoh, Anda mungkin memiliki aplikasi daemon yang memindai file di organisasi Anda, dengan memperingatkan jenis atau nama file tertentu. Di bawah Pilih izin, perluas File, lalu pilih
Files.Read.All
izin. - Pilih Tambahkan izin.
- Beberapa izin, seperti izin Files.Read.Al Microsoft Graph memerlukan persetujuan admin. Anda memberikan persetujuan admin dengan memilih tombol Izinkan admin, yang dibahas nanti di bagian tombol persetujuan Admin.
Mengonfigurasi kredensial klien
Aplikasi yang menggunakan izin aplikasi mengautentikasi sebagai diri mereka sendiri dengan menggunakan kredensial mereka sendiri, tanpa memerlukan interaksi pengguna apa pun. Sebelum aplikasi Anda (atau API) dapat mengakses Microsoft Graph, API web Anda sendiri, atau API lain dengan menggunakan izin aplikasi, Anda harus mengonfigurasi kredensial aplikasi klien tersebut.
Untuk informasi selengkapnya tentang mengonfigurasi kredensial aplikasi, lihat bagian Tambahkan kredensial dari Mulai Cepat: Mendaftarkan aplikasi dengan platform identitas Microsoft.
Selengkapnya tentang izin API dan persetujuan admin
Panel izin API pendaftaran aplikasi berisi tabel Izin yang dikonfigurasi dan tombol Persetujuan admin, yang dijelaskan di bagian berikut.
Izin yang dikonfigurasi
Tabel Izin yang dikonfigurasi pada panel izin API menunjukkan daftar izin yang diperlukan aplikasi Anda untuk operasi dasar - daftar akses sumber daya (RRA) yang diperlukan. Pengguna, atau admin mereka, harus menyetujui izin ini sebelum menggunakan aplikasi Anda. Izin opsional lainnya dapat diminta nanti pada waktu proses (menggunakan persetujuan dinamis).
Ini adalah daftar minimum izin yang harus disetujui orang untuk aplikasi Anda. Mungkin ada lebih banyak, tetapi ini akan selalu diperlukan. Untuk keamanan dan untuk membantu pengguna dan admin merasa lebih nyaman menggunakan aplikasi Anda, jangan pernah meminta apa pun yang tidak Anda butuhkan.
Anda dapat menambahkan atau menghapus izin yang muncul dalam tabel ini dengan menggunakan langkah-langkah yang diuraikan di atas. Sebagai admin, Anda dapat memberikan persetujuan admin untuk sekumpulan lengkap izin API yang muncul dalam tabel, dan mencabut persetujuan untuk izin individual.
Tombol persetujuan admin
Tombol Berikan persetujuan admin untuk {penyewa Anda} memungkinkan admin untuk memberikan persetujuan admin atas izin yang dikonfigurasi untuk aplikasi. Saat Anda memilih tombol, dialog ditampilkan yang meminta Anda mengonfirmasi tindakan persetujuan.
Setelah memberikan persetujuan, izin yang diperlukan persetujuan admin ditunjukkan sebagai memiliki persetujuan yang diberikan:
Tombol Berikan persetujuan admin dinonaktifkan jika Anda bukan admin atau jika tidak ada izin yang dikonfigurasi untuk aplikasi tersebut. Jika Anda memiliki izin yang telah diberikan tetapi belum dikonfigurasi, tombol persetujuan admin akan meminta Anda untuk menangani izin ini. Anda bisa menambahkannya ke izin yang dikonfigurasi atau menghapusnya.
Menghapus izin aplikasi
Penting untuk tidak memberikan aplikasi terlalu banyak izin daripada yang diperlukan. Untuk mencabut persetujuan admin untuk izin di aplikasi Anda;
- Navigasi ke aplikasi Anda dan pilih izin API.
- Di bawah Izin yang dikonfigurasi, pilih tiga titik di samping izin yang ingin Anda hapus, dan pilih Hapus izin
- Di pop-up yang muncul, pilih Ya, hapus untuk mencabut persetujuan admin untuk izin tersebut.
Konten terkait
Lanjutkan ke mulai cepat berikutnya di seri untuk mempelajari cara mengonfigurasi jenis akun mana yang dapat mengakses aplikasi Anda. Misalnya, Anda mungkin ingin membatasi akses hanya ke pengguna tersebut di organisasi Anda (penyewa tunggal) atau mengizinkan pengguna di penyewa Microsoft Entra (multitenant) lainnya dan pengguna dengan akun Microsoft pribadi (MSA).