Aplikasi desktop yang memanggil API web - Pendaftaran aplikasi
Berlaku untuk: Penyewa Tenaga Kerja
Penyewa Eksternal (pelajari lebih lanjut)
Artikel ini membahas spesifikasi pendaftaran aplikasi untuk aplikasi desktop.
Jenis akun yang didukung
Jenis akun yang didukung di aplikasi desktop bergantung pada pengalaman yang ingin Anda tingkatkan. Karena hubungan ini, jenis akun yang didukung bergantung pada alur yang ingin Anda gunakan.
Audiens untuk akuisisi token interaktif
Jika aplikasi desktop Anda menggunakan autentikasi interaktif, Anda dapat masuk pengguna dari tipe akun apa pun.
Audiens untuk aplikasi desktop alur senyap
- Untuk menggunakan autentikasi Windows terintegrasi atau nama pengguna dan sandi, aplikasi Anda perlu mendaftarkan pengguna dalam penyewa milik Anda sendiri, contohnya, jika Anda adalah pengembang aplikasi bisnis (LOB). Di organisasi Microsoft Entra, aplikasi Anda perlu mendaftarkan pengguna dalam penyewa Anda sendiri jika itu adalah skenario ISV. Alur autentikasi ini tidak didukung untuk akun personal Microsoft.
- Jika Anda mengotentikasi pengguna dengan identitas sosial yang melewati otoritas dan kebijakan business-to-commerce (B2C), Anda hanya dapat menggunakan proses otentikasi interaktif dan nama pengguna serta kata sandi.
URI Pengalihan
URI pengalihan untuk digunakan dalam aplikasi desktop bergantung pada alur yang ingin Anda gunakan.
Tentukan URI pengalihan untuk aplikasi Anda dengan mengonfigurasi pengaturan platform untuk aplikasi di Pendaftaran aplikasi di pusat admin Microsoft Entra.
Untuk aplikasi yang menggunakan Web Authentication Manager (WAM), URI pengalihan tidak perlu dikonfigurasi dalam MSAL, tetapi harus dikonfigurasi di pendaftaran aplikasi.
Untuk aplikasi yang menggunakan autentikasi interaktif:
- Aplikasi yang menggunakan browser yang disematkan:
https://login.microsoftonline.com/common/oauth2/nativeclient
(Catatan: Jika aplikasi Anda akan memunculkan jendela yang biasanya tidak berisi bilah alamat, aplikasi tersebut menggunakan "browser yang disematkan".) - Aplikasi yang menggunakan browser sistem:
http://localhost
(Catatan: Jika aplikasi Anda akan membawa browser default sistem Anda (seperti Edge, Chrome, Firefox, dan sebagainya) untuk mengunjungi portal masuk Microsoft, aplikasi tersebut menggunakan "browser sistem".)
Penting
Sebagai praktik terbaik keamanan, kami merekomendasikan pengaturan secara eksplisit
https://login.microsoftonline.com/common/oauth2/nativeclient
atauhttp://localhost
sebagai URI pengalihan. Beberapa pustaka autentikasi seperti MSAL.NET menggunakan nilai defaulturn:ietf:wg:oauth:2.0:oob
ketika tidak ada URI pengalihan lain yang ditentukan, yang mana tidak disarankan. Default ini akan diperbarui sebagai perubahan mendasar dalam versi utama berikutnya.- Aplikasi yang menggunakan browser yang disematkan:
Jika Anda membuat aplikasi Objective-C atau Swift asli untuk macOS, daftarkan URI pengalihan berdasarkan pengidentifikasi bundel aplikasi Anda dalam format berikut:
msauth.<your.app.bundle.id>://auth
. Ganti<your.app.bundle.id>
dengan bundel pengidentifikasi aplikasi Anda.Jika Anda membuat aplikasi elektron Node.js, gunakan protokol string kustom alih-alih URI pengalihan web reguler (https://) untuk menangani langkah pengalihan alur otorisasi, misalnya
msal{Your_Application/Client_Id}://auth
(seperti msal00001111-aaaa-2222-bbbb-3333cc4444://auth). Nama protokol string kustom tidak boleh mudah ditebak dan harus mengikuti saran dalam Spesifikasi OAuth2.0 untuk Aplikasi Native.Jika aplikasi Anda hanya menggunakan autentikasi Windows terintegrasi atau nama pengguna dan kata sandi, Anda tidak perlu mendaftarkan URI pengalihan untuk aplikasi Anda. Alur ini melakukan perjalanan pulang pergi ke titik akhir platform identitas Microsoft v2.0. Aplikasi Anda tidak akan dipanggil balik pada URI tertentu.
Untuk membedakan alur kode perangkat, autentikasi Windows terintegrasi, dan nama pengguna dan sandi dari aplikasi klien rahasia menggunakan alur kredensial klien yang digunakan di daemon aplikasi, yang tidak memerlukan URI pengalihan, konfigurasikan sebagai aplikasi klien publik. Untuk mencapai konfigurasi ini:
Di pusat admin Microsoft Entra, pilih aplikasi Anda di Pendaftaran aplikasi, lalu pilih Autentikasi.
Di Pengaturan tingkat lanjut>Izinkan alur klien publik>Mengaktifkan alur seluler dan desktop berikut:, pilih Ya.
Izin API
Aplikasi desktop memanggil API untuk pengguna yang masuk. Mereka perlu meminta izin yang didelegasikan. Mereka tidak dapat meminta izin aplikasi, yang hanya ditangani dalam aplikasi daemon.
Langkah berikutnya
Lanjutkan ke artikel berikutnya dalam skenario ini, Konfigurasi kode aplikasi.