Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
MSAL.js mendukung perolehan token dari Web Account Manager (WAM) pada Windows. Token ini terikat ke perangkat tempat mereka diperoleh dan tidak di-cache di localStorage atau sessionStorage browser.
Lingkungan yang Didukung
Fitur ini saat ini hanya didukung di lingkungan berikut:
- Perangkat yang menjalankan build Windows yang mendukung fitur ini (akan ada penjelasan lebih lanjut tentang hal ini)
- Browser atau Teams Chrome dan Edge
- ekstensi akun Windows (versi 1.0.5 atau lebih tinggi) diinstal jika menggunakan Chrome atau Edge
- Aplikasi harus dihosting di
https
Selain itu, fitur ini saat ini hanya didukung untuk Akun Kerja dan Sekolah
Mengaktifkan fitur di MSAL.js
Untuk mengaktifkan fitur ini di MSAL.js atur allowPlatformBroker bendera ke true di objek konfigurasi Anda seperti:
const msalConfig = {
auth: {
clientId: "insert-clientId"
},
system: {
allowPlatformBroker: true
}
};
Selain itu, Anda harus memanggil dan menunggu API baru initialize sebelum memanggil API MSAL.js lainnya.
const pca = new PublicClientApplication(msalConfig);
// Initialize will establish a connection with the browser extension, if present
await pca.initialize();
// Call handleRedirectPromise, after initialization is complete
await pca.handleRedirectPromise();
// After initialize and handleRedirectPromise have completed, you may call any of the other APIs as you would without this feature
pca.acquireTokenSilent();
Tidak ada perubahan lain yang diperlukan untuk mendukung fitur baru ini. Setiap pengguna yang mengakses aplikasi Anda dari lingkungan yang didukung sekarang akan dapat memperoleh token terikat perangkat. Pengguna di lingkungan yang tidak didukung akan terus memperoleh token melalui alur berbasis web tradisional.
Contoh yang berfungsi dapat ditemukan di sini
Perbedaan saat menggunakan WAM untuk memperoleh token
Ada beberapa hal yang mungkin bertingkah sedikit berbeda saat memperoleh token melalui WAM.
- Semua konfigurasi terkait cache hanya berlaku untuk cache lokal MSAL. Broker asli mengontrol cache sendiri, lebih aman, yang digunakan alih-alih penyimpanan browser dan tidak mendukung konfigurasi perilaku cache-nya. Ini berarti Anda mungkin menerima token yang di-cache terlepas dari nilai parameter permintaan seperti:
forceRefresh,cacheLookupPolicyataustoreInCache. Selain itu, token yang diterima dari broker asli tidak disimpan di penyimpanan lokal atau sesi terlepas dari apa yang telah Anda konfigurasi di PublicClientApplication. - Jika WAM perlu meminta pengguna untuk interaksi, perintah sistem akan dibuka. Perintah ini terlihat sedikit berbeda dari jendela popup browser tempat Anda terbiasa.
- Mengalihkan akun Anda di prompt WAM tidak didukung dan MSAL.js akan melemparkan kesalahan (Kode Kesalahan: user_switch) jika hal ini terjadi. Aplikasi Anda bertanggung jawab untuk menangkap kesalahan ini dan menanganinya dengan cara yang masuk akal untuk skenario Anda (misalnya Tampilkan halaman kesalahan, coba lagi dengan akun baru, coba lagi dengan akun asli, dll.)