Mulai cepat: Memasukkan pengguna dan memanggil Microsoft Graph API dari aplikasi web Node.js menggunakan MSAL Node

Dalam mulai cepat ini, Anda mengunduh dan menjalankan sampel kode yang menunjukkan bagaimana aplikasi web Node.js dapat memasukkan pengguna dengan menggunakan alur kode otorisasi. Sampel kode juga menunjukkan cara mendapatkan token akses untuk memanggil Microsoft Graph API.

Lihat Cara kerja sampel untuk melihat ilustrasi.

Mulai cepat ini menggunakan Microsoft Authentication Library for Node.js (MSAL Node) dengan alur kode otorisasi.

Prasyarat

Mendaftarkan dan mengunduh aplikasi mulai cepat Anda

Langkah 1: Daftarkan aplikasi Anda

Tip

Langkah-langkah dalam artikel ini mungkin sedikit berbeda berdasarkan portal tempat Anda memulai.

  1. Masuk ke pusat admin Microsoft Entra sebagai setidaknya Administrator Aplikasi Cloud.
  2. 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.
  3. Telusuri Aplikasi >Identitas>Pendaftaran aplikasi dan pilih Pendaftaran baru.
  4. Masukkan Nama untuk aplikasi Anda. Pengguna aplikasi mungkin melihat nama ini, dan Anda dapat mengubahnya nanti.
  5. Di bawah Jenis akun yang didukung, pilih Hanya akun dalam direktori organisasi ini.
  6. Atur jenis URI Pengalihan ke Web dan nilai ke http://localhost:3000/auth/redirect.
  7. Pilih Daftarkan.
  8. Di halaman Gambaran Umum aplikasi, catat nilai ID Aplikasi (klien) untuk digunakan nanti.
  9. Di bagian Kelola, pilih Sertifikat & rahasia>Rahasia klien baru. Biarkan deskripsi kosong dan kedaluwarsa default, lalu pilih Tambahkan.
  10. Perhatikan nilai Rahasia klien untuk digunakan nanti.

Langkah 2: Unduh proyek

Untuk menjalankan proyek dengan server web menggunakan Node.js, unduh file proyek inti.

Langkah 3: Konfigurasikan aplikasi Node Anda

Ekstrak proyek, buka folder ms-identity-node-main, lalu buka file .env di bawah folder App. Ganti nilai di atas sebagai berikut:

Variabel Deskripsi Misalnya
Enter_the_Cloud_Instance_Id_Here Instans cloud Azure tempat aplikasi Anda terdaftar https://login.microsoftonline.com/ (termasuk garis miring berikutnya)
Enter_the_Tenant_Info_here ID Penyewa atau Domain primer contoso.microsoft.com atau aaaabbbb-0000-cccc-1111-dddd2222eeee
Enter_the_Application_Id_Here ID Klien dari aplikasi yang Anda daftarkan 00001111-aaaa-2222-bbbb-3333cccc4444
Enter_the_Client_Secret_Here Rahasia klien dari aplikasi yang Anda daftarkan A1b-C2d_E3f.H4i,J5k?L6m!N7o-P8q_R9s.T0u
Enter_the_Graph_Endpoint_Here Instans cloud Microsoft Graph API yang akan dipanggil oleh aplikasi Anda https://graph.microsoft.com/ (termasuk garis miring berikutnya)
Enter_the_Express_Session_Secret_Here Serangkaian karakter acak yang digunakan untuk menandatangani cookie sesi Ekspres A1b-C2d_E3f.H4...

File Anda akan terlihat seperti di bawah ini:

CLOUD_INSTANCE=https://login.microsoftonline.com/
TENANT_ID=aaaabbbb-0000-cccc-1111-dddd2222eeee
CLIENT_ID=00001111-aaaa-2222-bbbb-3333cccc4444
CLIENT_SECRET=A1b-C2d_E3f.H4...

REDIRECT_URI=http://localhost:3000/auth/redirect
POST_LOGOUT_REDIRECT_URI=http://localhost:3000

GRAPH_API_ENDPOINT=https://graph.microsoft.com/

EXPRESS_SESSION_SECRET=6DP6v09eLiW7f1E65B8k

Langkah 4: Menjalankan proyek

Jalankan proyek menggunakan Node.js.

  1. Untuk memulai server, jalankan perintah berikut dari direktori proyek:

    cd App
    npm install
    npm start
    
  2. Buka http://localhost:3000/.

  3. Pilih Masuk untuk memulai proses masuk.

    Saat pertama kali masuk, Anda akan diminta untuk memberikan persetujuan untuk mengizinkan aplikasi memasukkan Anda dan mengakses profil Anda. Setelah Anda berhasil masuk, Anda akan diarahkan kembali ke beranda aplikasi.

Informasi selengkapnya

Cara kerja sampel

Sampel menghosting server web di localhost, port 3000. Saat browser web mengakses alamat ini, aplikasi merender beranda. Setelah pengguna memilih Masuk, aplikasi mengalihkan browser ke layar masuk Microsoft Entra, melalui URL yang dihasilkan oleh pustaka Node MSAL. Setelah persetujuan pengguna, browser mengalihkan pengguna kembali ke beranda aplikasi, bersama dengan ID dan token akses.

Simpul MSAL

Pustaka MSAL Node memasukkan pengguna dan meminta token yang digunakan untuk mengakses API yang dilindungi oleh platform identitas Microsoft. Anda dapat mengunduh versi terbaru menggunakan Node.js Package Manager (npm):

npm install @azure/msal-node

Langkah berikutnya

Pelajari selengkapnya dengan membangun aplikasi web ASP.NET Core yang memasukkan pengguna dalam seri tutorial multi-bagian berikut: