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.
Sebelum memulai di sini, pastikan Anda memahami cara menginisialisasi objek aplikasi.
Pustaka MSAL memiliki sekumpulan opsi konfigurasi yang dapat digunakan untuk menyesuaikan perilaku alur autentikasi Anda. Opsi ini dapat diatur baik di konstruktor PublicClientApplication objek atau sebagai bagian dari API permintaan. Di sini kami menjelaskan objek konfigurasi yang dapat diteruskan ke PublicClientApplication konstruktor.
Menggunakan objek konfigurasi
Objek konfigurasi memiliki struktur berikut, dan dapat diteruskan ke PublicClientApplication konstruktor. Satu-satunya parameter konfigurasi yang diperlukan adalah ID klien aplikasi. Segala sesuatu yang lain bersifat opsional, tetapi mungkin diperlukan tergantung pada penyewa dan model aplikasi Anda.
const msalConfig = {
auth: {
clientId: "enter_client_id_here",
authority: "https://login.microsoftonline.com/common",
knownAuthorities: [],
cloudDiscoveryMetadata: "",
redirectUri: "enter_redirect_uri_here",
postLogoutRedirectUri: "enter_postlogout_uri_here",
navigateToLoginRequestUrl: true,
clientCapabilities: ["CP1"],
},
cache: {
cacheLocation: "sessionStorage",
},
system: {
loggerOptions: {
loggerCallback: (
level: LogLevel,
message: string,
containsPii: boolean
): void => {
if (containsPii) {
return;
}
switch (level) {
case LogLevel.Error:
console.error(message);
return;
case LogLevel.Info:
console.info(message);
return;
case LogLevel.Verbose:
console.debug(message);
return;
case LogLevel.Warning:
console.warn(message);
return;
}
},
piiLoggingEnabled: false,
},
windowHashTimeout: 60000,
iframeHashTimeout: 6000,
loadFrameTimeout: 0,
protocolMode: "AAD"
},
telemetry: {
application: {
appName: "My Application",
appVersion: "1.0.0",
},
},
};
const msalInstance = new PublicClientApplication(msalConfig);
Opsi Konfigurasi
Opsi Konfigurasi Autentikasi
| Option | Deskripsi | Format | Nilai Bawaan |
|---|---|---|---|
clientId |
ID aplikasi aplikasi Anda. Dapat ditemukan di panel pendaftaran aplikasi portal Azure Anda | UUID/GUID | Tidak ada. Parameter ini diperlukan agar MSAL dapat melakukan tindakan apa pun. |
authority |
URI penyewa untuk mengautentikasi dan mengotorisasi dengan. Biasanya dalam bentuk https://{uri}/{tenantid} |
String dalam format URI dengan penyewa - https://{uri}/{tenantid} |
https://login.microsoftonline.com/common |
knownAuthorities |
Array URI yang diketahui valid. Digunakan dalam skenario B2C. | Array string dalam format URI | Array kosong [] |
cloudDiscoveryMetadata |
String yang berisi respons penemuan cloud. Digunakan dalam skenario Microsoft Entra. | string | String kosong "" |
authorityMetadata |
String yang berisi respons titik akhir .well-known/openid-configuration. | string | String kosong "" |
redirectUri |
URI tempat respons kode otorisasi dikirim kembali. Lokasi apa pun yang ditentukan di sini harus memiliki pustaka MSAL yang tersedia untuk menangani respons. | String dalam format URI absolut atau relatif | Halaman permintaan masuk (window.location.href dari halaman yang membuat permintaan autentikasi) |
postLogoutRedirectUri |
URI yang dialihkan ke setelah panggilan logout() dilakukan. | String dalam format URI absolut atau relatif. Teruskan null untuk menonaktifkan pengalihan pasca keluar. |
Halaman permintaan masuk (window.location.href dari halaman yang membuat permintaan autentikasi) |
navigateToLoginRequestUrl |
Jika true, akan menavigasi kembali ke lokasi permintaan asli sebelum memproses respons kode otorisasi.
redirectUri Jika sama dengan lokasi permintaan asli, bendera ini harus diatur ke false. |
Boolean | true |
clientCapabilities |
Array kemampuan yang akan ditambahkan ke semua permintaan jaringan sebagai bagian xms_cc dari permintaan klaim |
Array yang berisi string | [] |
azureCloudOptions |
Sekumpulan opsi cloud azure yang ditentukan bagi pengembang untuk default ke otoritas cloud spesifik mereka. | AzureCloudOptions | AzureCloudInstance.None |
skipAuthorityMetadataCache |
Bendera untuk memilih apakah akan menggunakan cache metadata lokal selama inisialisasi otoritas. Cache metadata digunakan jika tidak ada metadata otoritas yang disediakan dan sebelum panggilan jaringan untuk metadata telah dilakukan. | Boolean | false |
onRedirectNavigate |
Panggilan balik yang melewati URL MSAL akan menavigasi ke dalam alur pengalihan.
false Mengembalikan di panggilan balik akan menghentikan navigasi. |
Fungsi - (url: string) => boolean \| void |
undefined |
instanceAware |
Bendera yang menunjukkan apakah STS harus mengirim kembali parameter tambahan untuk menentukan dari mana token harus diambil. | Boolean | false |
isMcp |
Jika true, resource parameter diperlukan pada semua permintaan token. Digunakan untuk alur Protokol Konteks Model (MCP). |
Boolean | false |
Opsi Konfigurasi Cache
| Option | Deskripsi | Format | Nilai Bawaan |
|---|---|---|---|
cacheLocation |
Lokasi cache token di browser. | Nilai string yang harus menjadi salah satu dari berikut ini: "sessionStorage", , "localStorage""memoryStorage" |
sessionStorage |
temporaryCacheLocation |
(Tidak digunakan lagi) Lokasi cache sementara di browser. Opsi ini hanya boleh diubah untuk kasus tepi tertentu. Untuk informasi selengkapnya, lihat penembolokan. | Nilai string yang harus menjadi salah satu dari berikut ini: "sessionStorage", , "localStorage""memoryStorage" |
sessionStorage |
storeAuthStateInCookie |
(Tidak digunakan lagi) Jika true, menyimpan item cache dalam cookie serta cache browser. Sebelumnya digunakan untuk kompatibilitas Internet Explorer. | Boolean | false |
secureCookies |
(Tidak digunakan lagi) Jika true dan storeAuthStateInCookie juga diaktifkan, MSAL menambahkan Secure bendera ke cookie browser sehingga hanya dapat dikirim melalui HTTPS. |
Boolean | false |
cacheMigrationEnabled |
Jika true, entri cache dari versi MSAL yang lebih lama diperbarui agar sesuai dengan skema cache terbaru saat startup. Jika aplikasi Anda belum diperbarui baru-baru ini ke versi baru MSAL.js, Anda dapat menonaktifkannya dengan aman. Jika entri cache lama tidak dimigrasikan, ini dapat mengakibatkan kehilangan cache saat mencoba mengambil akun atau token, dan pengguna yang terpengaruh mungkin perlu mengautentikasi ulang untuk mendapatkan informasi terbaru. | Boolean |
true saat menggunakan localStorage, false jika tidak |
claimsBasedCachingEnabled |
Jika true, token akses di-cache di bawah kunci yang berisi hash string klaim yang diminta, yang mengakibatkan kehilangan cache dan permintaan token jaringan baru ketika permintaan token yang sama dibuat dengan klaim yang berbeda atau hilang. Jika diatur ke false, token di-cache tanpa klaim, tetapi semua permintaan yang berisi klaim masuk ke jaringan dan menimpa token yang sebelumnya di-cache dengan cakupan yang sama. |
Boolean | false |
Note
Opsi temporaryCacheLocation tidak digunakan lagi dalam versi MSAL Browser terbaru dan dapat dihapus dalam rilis utama di masa mendatang. Anda tidak boleh mengandalkan opsi ini untuk implementasi baru.
Note
Opsi storeAuthStateInCookie dan secureCookies tidak digunakan lagi dalam versi MSAL Browser terbaru. Opsi ini terutama digunakan untuk kompatibilitas Internet Explorer, yang tidak lagi didukung. Mereka dapat dihapus dalam rilis utama di masa mendatang.
Lihat Penembolokan di MSAL untuk informasi selengkapnya.
Opsi Konfigurasi Sistem
| Option | Deskripsi | Format | Nilai Bawaan |
|---|---|---|---|
loggerOptions |
Objek konfigurasi untuk pencatat. | Lihat di bawah ini. | Lihat di bawah ini. |
windowHashTimeout |
Waktu habis dalam milidetik untuk menunggu operasi popup diselesaikan. | bilangan bulat (milidetik) | 60000 |
iframeHashTimeout |
Waktu habis dalam milidetik untuk menunggu operasi iframe diselesaikan. | bilangan bulat (milidetik) | 6000 |
loadFrameTimeout |
Waktu habis dalam milidetik untuk menunggu operasi iframe/popup diselesaikan. Jika disediakan, akan mengatur nilai default untuk windowHashTimeout dan iframeHashTimeout. |
bilangan bulat (milidetik) | undefined |
navigateFrameWait |
Penundaan dalam milidetik untuk menunggu iframe dimuat di jendela. | bilangan bulat (milidetik) | Di IE atau Edge: 500, di semua browser lainnya: 0 |
asyncPopups |
(Tidak digunakan lagi — gunakan navigatePopups sebagai gantinya.) Mengatur apakah popup dibuka secara asinkron. Ketika diatur ke false, popup kosong dibuka sebelum hal lain terjadi. Ketika diatur ke true, popup dibuka saat membuat permintaan jaringan. |
Boolean | false |
navigatePopups |
Mengatur apakah popup dibuka dan dinavigasi ke nanti. Saat diatur ke true, popup kosong dibuka lalu navigasikan ke domain masuk. Ketika diatur ke false, popup dibuka langsung ke domain masuk. Ini dapat diatur ke false untuk skenario di mana about:blank tidak didukung, seperti aplikasi desktop atau aplikasi web progresif. |
Boolean | true |
allowRedirectInIframe |
Secara default, MSAL tidak mengizinkan operasi pengalihan dimulai ketika aplikasi berada di dalam iframe. Atur bendera ini ke true untuk menghapus pemeriksaan ini. |
Boolean | false |
cryptoOptions |
Objek konfigurasi untuk operasi kripto di browser. | Lihat Opsi Konfigurasi Kripto | Lihat Opsi Konfigurasi Kripto |
pollIntervalMilliseconds |
Interval waktu dalam milidetik antara polling hash URL popup selama autentikasi. | bilangan bulat (milidetik) | 30 |
protocolMode |
Enum mewakili mode protokol yang akan digunakan. Jika "AAD", fungsi MSAL pada titik akhir AAD v2 yang mematuhi OIDC; jika "OIDC", fungsinya pada titik akhir yang mematuhi OIDC lainnya. |
string | "AAD" |
Opsi Konfigurasi Pencatat
| Option | Deskripsi | Format | Nilai Bawaan |
|---|---|---|---|
loggerCallback |
Fungsi panggilan balik yang menangani pengelogan pernyataan MSAL. | Fungsi- loggerCallback: (level: LogLevel, message: string, containsPii: boolean): void |
Lihat di atas. |
piiLoggingEnabled |
Jika benar, informasi pengidentifikasi pribadi (PII) disertakan dalam log. | Boolean | false |
Opsi Konfigurasi Kripto
| Option | Deskripsi | Format | Nilai Bawaan |
|---|---|---|---|
useMsrCrypto |
Apakah akan menggunakan MSR Crypto jika tersedia di browser (dan antarmuka kripto lainnya tidak tersedia). | Boolean | false |
entropy |
Nilai acak yang kuat secara kriptografis digunakan untuk menyemai Kripto MSR (misalnya crypto.randomBytes(48) dari Node). 48 bit entropi disarankan. Diperlukan jika useMsrCrypto diaktifkan. |
Uint8Array |
undefined |
Opsi Konfigurasi Telemetri
| Option | Deskripsi | Format | Nilai Bawaan |
|---|---|---|---|
application |
Opsi telemetri untuk aplikasi yang menggunakan MSAL.js | Lihat di bawah ini | Lihat di bawah ini |
client |
Instans klien performa telemetri | IPerformanceClient | StubPerformanceClient |
Telemetri Aplikasi
| Option | Deskripsi | Format | Nilai Bawaan |
|---|---|---|---|
appName |
Nama string unik aplikasi | string | String kosong "" |
appVersion |
Versi aplikasi menggunakan MSAL | string | String kosong "" |