Aplikasi desktop yang memanggil API web - Pendaftaran aplikasi

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 nyalakan. 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 memasukkan pengguna di penyewa Anda sendiri, misalnya, jika Anda adalah pengembang lini bisnis (LOB). Atau, di organisasi Microsoft Entra, aplikasi Anda perlu memasukkan pengguna di penyewa Anda sendiri jika itu adalah skenario ISV. Alur autentikasi ini tidak didukung untuk akun personal Microsoft.
  • Jika Anda masuk pengguna dengan identitas sosial yang lulus otoritas dan kebijakan business-to-commerce (B2C), Anda hanya dapat menggunakan autentikasi interaktif dan kata sandi-nama pengguna.

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 mengarahkan browser default sistem (seperti Edge, Chrome, Firefox, dll.) untuk mengunjungi portal login Microsoft, aplikasi tersebut menggunakan "browser sistem".)

    Penting

    Sebagai praktik terbaik keamanan, kami merekomendasikan pengaturan secara eksplisit https://login.microsoftonline.com/common/oauth2/nativeclient atau http://localhost sebagai URI pengalihan. Beberapa pustaka autentikasi MSAL.NET menggunakan nilai default urn:ietf:wg:oauth:2.0:oob ketika tidak ada URI pengalihan lain yang ditentukan, yang tidak disarankan. Default ini akan diperbarui sebagai perubahan yang melanggar dalam rilis utama berikutnya.

  • 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 (misalnya msal00001111-aaaa-2222-bbbb-3333cccc4444://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:

    1. Di pusat admin Microsoft Entra, pilih aplikasi Anda di Pendaftaran aplikasi, lalu pilih Autentikasi.

    2. Di Pengaturan tingkat lanjut>Izinkan alur klien publik>Mengaktifkan alur seluler dan desktop berikut:, pilih Ya.

      Mengaktifkan pengaturan klien publik pada panel Autentikasi di portal Microsoft Azure

Izin API

Aplikasi desktop memanggil API untuk pengguna yang masuk. Aplikasi web 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.