Aplikasi native
Peringatan
Konten ini untuk titik akhir Azure AD v1.0 yang lebih lama. Gunakan platform identitas Microsoft untuk proyek baru.
Aplikasi asli adalah aplikasi yang memanggil API web atas nama pengguna. Skenario ini dibangun berdasarkan jenis pemberian izin kode otorisasi OAuth 2.0 dengan klien publik, seperti yang dijelaskan dalam bagian 4.1 dari spesifikasi OAuth 2.0. Aplikasi asli memperoleh token akses untuk pengguna dengan menggunakan protokol OAuth 2.0. Token akses ini kemudian dikirim dalam permintaan ke API web, yang memberi otorisasi kepada pengguna dan mengembalikan sumber daya yang diinginkan.
Diagram

Alur protokol
Jika Anda menggunakan Pustaka Autentikasi AD, sebagian besar detail protokol yang dijelaskan di bawah ini ditangani untuk Anda, seperti pop-up browser, cache token, dan penanganan token refresh.
- Menggunakan pop-up browser, aplikasi native membuat permintaan ke titik akhir otorisasi di Azure Active Directory. Permintaan ini mencakup ID Aplikasi dan URI pengalihan aplikasi asli seperti yang ditunjukkan di portal Microsoft Azure, dan ID aplikasi URI untuk API web. Jika pengguna belum masuk, mereka akan diminta untuk masuk lagi
- Azure Active Directory mengautentikasi pengguna. Jika itu adalah aplikasi multipenyewa dan persetujuan diperlukan untuk menggunakan aplikasi, pengguna akan diminta untuk menyetujui jika mereka belum melakukannya. Setelah memberikan persetujuan dan setelah autentikasi berhasil, Azure Active Directory mengeluarkan respons kode otorisasi kembali ke URI pengalihan aplikasi klien.
- Saat Azure Active Directory mengeluarkan respons kode otorisasi kembali ke URI pengalihan, aplikasi klien menghentikan interaksi browser dan mengekstrak kode otorisasi dari respons. Dengan menggunakan kode otorisasi ini, aplikasi klien mengirimkan permintaan ke titik akhir token Azure Active Directory yang menyertakan kode otorisasi, detail tentang aplikasi klien (ID aplikasi dan URI pengalihan), dan sumber daya yang diinginkan (ID aplikasi URI untuk API web).
- Kode otorisasi dan informasi tentang aplikasi klien dan API web divalidasi oleh Azure Active Directory. Setelah validasi berhasil, Azure Active Directory mengembalikan dua token: token akses JWT dan token refresh JWT. Selain itu, Azure Active Directory mengembalikan informasi dasar tentang pengguna, seperti nama tampilan dan ID penyewa mereka.
- Melalui HTTPS, aplikasi klien menggunakan token akses JWT yang dikembalikan untuk menambahkan string JWT dengan penunjukan "Pembawa" di header Otorisasi permintaan ke API web. API web kemudian memvalidasi token JWT, dan jika validasi berhasil, mengembalikan sumber daya yang diinginkan.
- Ketika token akses kedaluwarsa, aplikasi klien akan menerima kesalahan yang menunjukkan pengguna perlu mengautentikasi lagi. Jika aplikasi memiliki token refresh yang valid, aplikasi dapat digunakan untuk memperoleh token akses baru tanpa meminta pengguna untuk masuk lagi. Jika token refresh kedaluwarsa, aplikasi harus mengautentikasi pengguna secara interaktif sekali lagi.
Catatan
Token refresh yang dikeluarkan oleh Azure Active Directory dapat digunakan untuk mengakses beberapa sumber daya. Misalnya, jika Anda memiliki aplikasi klien yang memiliki izin untuk memanggil dua API web, token refresh juga dapat digunakan untuk mendapatkan token akses ke API web lainnya.
Sampel kode
Lihat sampel kode untuk skenario Aplikasi Native ke Web API. Kemudian, periksa kembali sesering mungkin karena kami sampel baru sering ditambahkan. Aplikasi Native ke Web API.
Pendaftaran aplikasi
Untuk mendaftarkan aplikasi dengan titik akhir Azure Active Directory v1.0, lihat Mendaftarkan aplikasi.
- Penyewa tunggal - Aplikasi asli dan API web harus terdaftar di direktori yang sama di Azure Active Directory. API web dapat dikonfigurasi untuk mengekspos serangkaian izin, yang digunakan untuk membatasi akses aplikasi native ke sumber dayanya. Aplikasi klien kemudian memilih izin yang diinginkan dari menu drop-down "Izin ke Aplikasi Lain" di portal Microsoft Azure.
- Multipenyewa - Pertama, aplikasi native hanya pernah terdaftar di direktori pengembang atau penerbit. Kedua, aplikasi native dikonfigurasi untuk menunjukkan izin yang diperlukan untuk berfungsi. Daftar izin yang diperlukan ini diperlihatkan dalam dialog ketika pengguna atau administrator di direktori tujuan memberikan persetujuan untuk aplikasi, yang membuatnya tersedia untuk organisasi mereka. Beberapa aplikasi hanya memerlukan izin tingkat pengguna, yang dapat disetujui oleh setiap pengguna dalam organisasi. Aplikasi lain memerlukan izin tingkat administrator, yang tidak dapat disetujui oleh pengguna dalam organisasi. Hanya administrator direktori yang dapat memberikan persetujuan untuk aplikasi yang memerlukan tingkat izin ini. Ketika pengguna atau administrator menyetujui, hanya API web yang terdaftar di direktori mereka.
Kedaluwarsa token
Ketika aplikasi native menggunakan kode otorisasi untuk mendapatkan token akses JWT, aplikasi ini juga menerima token refresh JWT. Ketika token akses kedaluwarsa, token refresh dapat digunakan untuk mengautentikasi ulang pengguna tanpa mengharuskan mereka untuk masuk lagi. Token refresh ini kemudian digunakan untuk mengautentikasi pengguna, yang menghasilkan token akses baru dan token refresh.
Langkah berikutnya
- Pelajari selengkapnya tentang jenis dan skenario Aplikasi lainnya
- Mempelajari tentang dasar-dasar autentikasi Azure Active Directory