Mulai Cepat: Masukkan pengguna dan panggil Microsoft Graph di aplikasi Universal Windows Platform
Dalam mulai cepat ini, Anda mengunduh dan menjalankan sampel kode di mana menunjukkan cara aplikasi Universal Windows Platform (UWP) dapat memasukkan pengguna dan mendapatkan token akses untuk memanggil Microsoft Graph API.
Lihat Cara kerja sampel untuk melihat ilustrasi.
Prasyarat
- Akun Azure dengan langganan aktif. Buat akun secara gratis.
- Visual Studio
Catatan
MSAL.NET versi 4.61.0 ke atas tidak memberikan dukungan untuk Platform Windows Universal (UWP), Xamarin Android, dan Xamarin iOS. Sebaiknya migrasikan aplikasi UWP Anda ke kerangka kerja modern seperti WINUI. Baca selengkapnya tentang penghentian dalam Mengumumkan Penghentian MSAL.NET mendatang untuk Xamarin dan UWP.
Mendaftar dan mengunduh aplikasi mulai cepat Anda
Anda memiliki dua opsi untuk memulai aplikasi mulai cepat Anda:
- [Ekspres] Opsi 1: Mendaftar dan mengonfigurasi aplikasi Anda secara otomatis lalu mengunduh sampel kode Anda
- [Manual] Opsi 2: Mendaftarkan dan mengonfigurasi sampel aplikasi dan kode secara manual
Opsi 1: Mendaftarkan dan mengonfigurasi aplikasi secara otomatis lalu mengunduh sampel kode
- Buka pusat admin AMicrosoft Entra - Pendaftaran aplikasi pengalaman mulai cepat.
- Masukkan nama untuk aplikasi dan pilih Daftar.
- Ikuti petunjuk untuk mengunduh dan mengonfigurasi aplikasi baru Anda secara otomatis.
Opsi 2: Mendaftarkan dan mengonfigurasi sampel aplikasi dan kode secara manual
Langkah 1: Daftarkan aplikasi Anda
Tip
Langkah-langkah dalam artikel ini mungkin sedikit berbeda berdasarkan portal tempat Anda memulai.
Untuk mendaftarkan aplikasi Anda dan menambahkan informasi pendaftaran aplikasi ke solusi Anda, ikuti langkah-langkah berikut:
- Masuk ke Pusat Admin Microsoft Entra.
- Jika Anda memiliki akses ke beberapa penyewa, gunakan ikon Pengaturan di menu atas untuk beralih ke penyewa tempat Anda ingin mendaftarkan aplikasi dari menu Direktori + langganan.
- Telusuri ke Aplikasi> Identitas>Pendaftaran aplikasi, pilih Pendaftaran baru.
- Masukkan Nama untuk aplikasi Anda, contohnya
UWP-App-calling-MsGraph
. Pengguna aplikasi mungkin melihat nama ini, dan Anda dapat mengubahnya nanti. - Di bagian Tipe akun yang didukung, pilih Akun di direktori organisasi dan akun Microsoft pribadi apa pun (misalnya, Skype, Xbox, Outlook.com).
- Pilih Daftar untuk membuat aplikasi, lalu catat ID Aplikasi (klien) untuk digunakan di langkah selanjutnya.
- Di bagian Kelola, pilih Autentikasi.
- Pilih Tambahkan platform>Aplikasi seluler dan desktop.
- Di bawah URI Pengalihan, pilih
https://login.microsoftonline.com/common/oauth2/nativeclient
. - Pilih Konfigurasikan.
Langkah 2: Unduh proyek
Tip
Untuk menghindari kesalahan yang disebabkan oleh keterbatasan panjang jalur di Windows, kami sarankan mengekstrak arsip atau mengkloning repositori ke direktori di dekat akar drive Anda.
Langkah 3: Konfigurasikan proyek
Ekstrak .zip arsip ke folder lokal yang dekat dengan akar drive Anda. Misalnya, ke dalam C:\Azure-Samples.
Buka proyek di Visual Studio. Instal beban kerjapengembangan Universal Windows Platform dan komponen SDK individu apa pun jika diminta.
Di MainPage.Xaml.cs, ubah nilai
ClientId
variabel ke ID Aplikasi (Klien) dari aplikasi yang Anda daftarkan sebelumnya.private const string ClientId = "Enter_the_Application_Id_here";
Anda dapat menemukan ID Aplikasi (klien) di panel Gambaran Umum aplikasi di pusat admin Microsoft Entra (Aplikasi> Identitas>Pendaftaran aplikasi>{Pendaftaran aplikasi Anda}).
Buat lalu pilih sertifikat uji yang ditandatangani sendiri baru untuk paket:
- Di Penjelajah Solusi, klik ganda file Package.appxmanifest.
- Pilih Kemasan>Pilih Sertifikat...>Buat....
- Masukkan kata sandi lalu pilih OKE. Sebuah sertifikat bernama Native_UWP_V2_TemporaryKey.pfx dibuat.
- Pilih OK untuk menutup dialog Pilih sertifikat, lalu verifikasi bahwa Anda melihat Native_UWP_V2_TemporaryKey.pfx di Penjelajah Solusi.
- Di Penjelajah Solusi, klik kanan proyek Native_UWP_V2 dan pilih Properti.
- Pilih Masuk, lalu pilih .pfx yang Anda buat di daftar turun bawah Pilih file kunci nama yang kuat.
Langkah 4: Jalankan aplikasi
Untuk menjalankan aplikasi sampel pada mesin lokal Anda:
Di toolbar Visual Studio, pilih platform yang tepat (mungkin x64 atau x86,bukan ARM). Perangkat target harus berubah dari Perangkat ke Mesin Lokal.
Pilih Debug>Mulai Tanpa Debugging.
Jika diminta untuk melakukannya, Anda mungkin harus mengaktifkan terlebih Mode Developer terlebih dahulu, lalu Mulai Tanpa Debugging lagi untuk meluncurkan aplikasi.
Saat jendela aplikasi muncul, Anda dapat memilih tombol Panggil Microsoft Graph API, masukkan kredensial Anda, dan setujui izin yang diminta oleh aplikasi. Jika berhasil, aplikasi menampilkan beberapa informasi token dan data yang diperoleh dari panggilan ke Microsoft Graph API.
Cara kerja sampel
MSAL.NET
MSAL (Microsoft.Identity.Client) adalah pustaka yang digunakan untuk masuk pengguna dan meminta token keamanan. Token keamanan digunakan untuk mengakses API yang dilindungi oleh platform identitas Microsoft. Anda dapat menginstal MSAL dengan menjalankan perintah berikut di Konsol Package ManagerVisual Studio:
Install-Package Microsoft.Identity.Client
Inisialisasi MSAL
Anda bisa menambahkan referensi untuk MSAL dengan menambahkan kode berikut:
using Microsoft.Identity.Client;
Kemudian, MSAL diinisialisasi menggunakan kode berikut:
public static IPublicClientApplication PublicClientApp;
PublicClientApp = PublicClientApplicationBuilder.Create(ClientId)
.WithRedirectUri("https://login.microsoftonline.com/common/oauth2/nativeclient")
.Build();
Nilainya ClientId
adalah ID Aplikasi (klien) aplikasi yang Anda daftarkan di pusat admin Microsoft Entra. Anda dapat menemukan nilai ini di halaman Gambaran Umum aplikasi di pusat admin Microsoft Entra.
Meminta token
MSAL memiliki dua metode untuk memperoleh token dalam aplikasi UWP: AcquireTokenInteractive
dan AcquireTokenSilent
.
Mendapatkan token pengguna secara interaktif
Beberapa situasi mengharuskan pengguna untuk berinteraksi dengan platform identitas Microsoft melalui jendela pop-up untuk memvalidasi info masuk mereka atau untuk memberikan persetujuan. Beberapa contohnya termasuk:
- Pengguna pertama kali masuk ke aplikasi
- Ketika pengguna perlu memasukkan kembali kredensial mereka karena kata sandi kedaluwarsa
- Ketika aplikasi Anda meminta akses ke sumber daya, bahwa pengguna perlu menyetujui
- Ketika Autentikasi dua faktor diperlukan
authResult = await PublicClientApp.AcquireTokenInteractive(scopes)
.ExecuteAsync();
scopes
Parameter berisi cakupan yang diminta, seperti untuk { "user.read" }
Microsoft Graph atau untuk { "api://<Application ID>/access_as_user" }
API web kustom.
Mendapatkan token pengguna secara diam-diam
Gunakan AcquireTokenSilent
metode untuk mendapatkan token untuk mengakses sumber daya yang dilindungi setelah metode AcquireTokenInteractive
awal. Anda tidak ingin mengharuskan pengguna untuk memvalidasi kredensial mereka setiap kali mereka perlu mengakses sumber daya. Sebagian besar waktu Anda ingin melakukan akuisisi dan pembaruan token tanpa interaksi pengguna
var accounts = await PublicClientApp.GetAccountsAsync();
var firstAccount = accounts.FirstOrDefault();
authResult = await PublicClientApp.AcquireTokenSilent(scopes, firstAccount)
.ExecuteAsync();
scopes
berisi cakupan yang diminta, seperti untuk{ "user.read" }
Microsoft Graph atau{ "api://<Application ID>/access_as_user" }
untuk API web kustom.firstAccount
menentukan akun pengguna pertama dalam cache (MSAL mendukung beberapa pengguna dalam satu aplikasi).
Bantuan dan dukungan
Jika Anda memerlukan bantuan, ingin melaporkan masalah, atau ingin mempelajari opsi dukungan, lihat Bantuan dan dukungan bagi pengembang.
Langkah berikutnya
Cobalah tutorial desktop Windows untuk mengetahui panduan langkah demi langkah lengkap tentang membangun aplikasi dan fitur baru, termasuk penjelasan lengkap tentang mulai cepat ini.