Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Przed rozpoczęciem tutaj upewnij się, że rozumiesz, jak zainicjować obiekt aplikacji.
Biblioteka biblioteki MSAL zawiera zestaw opcji konfiguracji, które mogą służyć do dostosowywania zachowania przepływów uwierzytelniania. Te opcje można ustawić w konstruktorze PublicClientApplication obiektu lub w ramach interfejsów API żądań. W tym miejscu opisano obiekt konfiguracji, który można przekazać do konstruktora PublicClientApplication .
Korzystanie z obiektu konfiguracji
Obiekt konfiguracji ma następującą strukturę i może zostać przekazany do konstruktora PublicClientApplication . Jedynym wymaganym parametrem konfiguracji jest identyfikator klienta aplikacji. Wszystko inne jest opcjonalne, ale może być wymagane w zależności od dzierżawy i modelu aplikacji.
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);
Opcje konfiguracji
Opcje konfiguracji uwierzytelniania
| Option | Description | Forma | Wartość domyślna |
|---|---|---|---|
clientId |
Identyfikator aplikacji. Znajduje się w okienku rejestracji aplikacji Azure Portal | Identyfikator UUID/IDENTYFIKATOR GUID | Żaden. Ten parametr jest wymagany w celu wykonania jakichkolwiek akcji przez bibliotekę MSAL. |
authority |
Identyfikator URI dzierżawy do uwierzytelniania i autoryzacji. Zazwyczaj przyjmuje formę https://{uri}/{tenantid} |
Ciąg w formacie identyfikatora URI z dzierżawą — https://{uri}/{tenantid} |
https://login.microsoftonline.com/common |
knownAuthorities |
Tablica identyfikatorów URI, które są znane jako prawidłowe. Używane w scenariuszach B2C. | Tablica ciągów w formacie identyfikatora URI | Pusta tablica [] |
cloudDiscoveryMetadata |
Ciąg zawierający odpowiedź odnajdywania w chmurze. Używane w scenariuszach Microsoft Entra. | ciąg | Pusty ciąg "" |
authorityMetadata |
Ciąg zawierający odpowiedź punktu końcowego .well-known/openid-configuration. | ciąg | Pusty ciąg "" |
redirectUri |
Identyfikator URI, do którego jest wysyłana odpowiedź kodu autoryzacji. Niezależnie od określonej tutaj lokalizacji musi być dostępna biblioteka BIBLIOTEKi MSAL do obsługi odpowiedzi. | Ciąg w formacie bezwzględnym lub względnym identyfikatora URI | Strona żądania logowania (window.location.href ze strony, która złożyła żądanie uwierzytelnienia) |
postLogoutRedirectUri |
Identyfikator URI, który jest przekierowywany do po wywołaniu logout(). | Ciąg w formacie bezwzględnym lub względnym identyfikatora URI. Przekaż null , aby wyłączyć przekierowanie wylogowywanie. |
Strona żądania logowania (window.location.href ze strony, która złożyła żądanie uwierzytelnienia) |
navigateToLoginRequestUrl |
Jeśli trueprogram przejdzie z powrotem do oryginalnej lokalizacji żądania przed przetworzeniem odpowiedzi kodu autoryzacji. Jeśli właściwość redirectUri jest taka sama jak oryginalna lokalizacja żądania, ta flaga powinna być ustawiona na wartość false. |
Boolean | true |
clientCapabilities |
Tablica możliwości, które mają być dodawane do wszystkich żądań sieciowych xms_cc w ramach żądania oświadczeń |
Tablica ciągów znaków | [] |
azureCloudOptions |
Zdefiniowany zestaw opcji chmury platformy Azure dla deweloperów domyślnie ustawiony na określone władze w chmurze. | AzureCloudOptions | AzureCloudInstance.None |
skipAuthorityMetadataCache |
Flaga do wybrania, czy podczas inicjowania urzędu ma być używana lokalna pamięć podręczna metadanych. Pamięć podręczna metadanych jest używana, jeśli nie podano metadanych urzędu i przed wykonaniem wywołania sieciowego metadanych. | Boolean | false |
onRedirectNavigate |
Wywołanie zwrotne, które przekazano adres URL biblioteki MSAL, przejdzie do w przepływach przekierowania. Powrót w wywołaniu false zwrotnym zatrzymuje nawigację. |
Funkcja- (url: string) => boolean \| void |
undefined |
instanceAware |
Flaga wskazująca, czy usługa STS powinna wysyłać dodatkowe parametry, aby określić, skąd mają być pobierane tokeny. | Boolean | false |
isMcp |
Jeśli trueparametr resource jest wymagany dla wszystkich żądań tokenu. Służy do przepływów protokołu MCP (Model Context Protocol). |
Boolean | false |
Opcje konfiguracji pamięci podręcznej
| Option | Description | Forma | Wartość domyślna |
|---|---|---|---|
cacheLocation |
Lokalizacja pamięci podręcznej tokenów w przeglądarce. | Wartość ciągu, która musi być jedną z następujących wartości: "sessionStorage", , "localStorage""memoryStorage" |
sessionStorage |
temporaryCacheLocation |
(Przestarzałe) Lokalizacja tymczasowej pamięci podręcznej w przeglądarce. Ta opcja powinna zostać zmieniona tylko w przypadku określonych przypadków brzegowych. Aby uzyskać więcej informacji, zobacz buforowanie. | Wartość ciągu, która musi być jedną z następujących wartości: "sessionStorage", , "localStorage""memoryStorage" |
sessionStorage |
storeAuthStateInCookie |
(Przestarzałe) Jeśli to prawda, przechowuje elementy pamięci podręcznej w plikach cookie, a także w pamięci podręcznej przeglądarki. Wcześniej była używana do Internet Explorer zgodności. | Boolean | false |
secureCookies |
(Przestarzałe) Jeśli wartość true i storeAuthStateInCookie jest również włączona, biblioteka MSAL dodaje flagę Secure do pliku cookie przeglądarki, aby można je było wysyłać tylko za pośrednictwem protokołu HTTPS. |
Boolean | false |
cacheMigrationEnabled |
Jeśli to prawda, wpisy pamięci podręcznej ze starszych wersji biblioteki MSAL są aktualizowane tak, aby były zgodne ze schematem najnowszej pamięci podręcznej podczas uruchamiania. Jeśli aplikacja nie została ostatnio zaktualizowana do nowej wersji MSAL.js, możesz bezpiecznie wyłączyć tę funkcję. Jeśli stare wpisy pamięci podręcznej nie są migrowane, może to spowodować chybienie pamięci podręcznej podczas próby pobrania kont lub tokenów, a użytkownicy, których to dotyczy, mogą wymagać ponownego uwierzytelnienia, aby uzyskać aktualną datę. | Boolean |
true w przypadku korzystania z elementu localStorage, false w przeciwnym razie |
claimsBasedCachingEnabled |
Jeśli truetokeny dostępu są buforowane w ramach klucza zawierającego skrót żądanego ciągu oświadczeń, co spowoduje chybienie pamięci podręcznej i nowe żądanie tokenu sieciowego, gdy to samo żądanie tokenu zostanie wykonane z różnymi lub brakującymi oświadczeniami. Jeśli ustawiono falsewartość , tokeny są buforowane bez oświadczeń, ale wszystkie żądania zawierające oświadczenia przechodzą do sieci i zastępują wszystkie wcześniej buforowane tokeny z tymi samymi zakresami. |
Boolean | false |
Note
Opcja temporaryCacheLocation została wycofana w ostatnich wersjach przeglądarki MSAL i może zostać usunięta w przyszłej wersji głównej. Nie należy polegać na tej opcji dla nowych implementacji.
Note
Opcje storeAuthStateInCookie i secureCookies zostały wycofane w ostatnich wersjach przeglądarki MSAL. Te opcje były używane głównie na potrzeby zgodności Internet Explorer, która nie jest już obsługiwana. Mogą zostać usunięte w przyszłej wersji głównej.
Aby uzyskać więcej informacji , zobacz Buforowanie w usłudze MSAL .
Opcje konfiguracji systemu
| Option | Description | Forma | Wartość domyślna |
|---|---|---|---|
loggerOptions |
Obiekt konfiguracji dla rejestratora. | Zobacz poniżej. | Zobacz poniżej. |
windowHashTimeout |
Limit czasu (w milisekundach) oczekuje na rozwiązywanie problemów z operacjami wyskakujących okienek. | liczba całkowita (milisekundy) | 60000 |
iframeHashTimeout |
Limit czasu (w milisekundach) oczekuje na rozwiązanie operacji elementu iframe. | liczba całkowita (milisekundy) | 6000 |
loadFrameTimeout |
Limit czasu w milisekundach, aby poczekać na rozwiązanie operacji iframe/wyskakujących okienek. Jeśli zostanie podana, ustawi wartości domyślne dla windowHashTimeout i iframeHashTimeout. |
liczba całkowita (milisekundy) | undefined |
navigateFrameWait |
Opóźnienie w milisekundach oczekiwania na załadowanie elementu iframe w oknie. | liczba całkowita (milisekundy) | W programie IE lub Edge: 500, we wszystkich innych przeglądarkach: 0 |
asyncPopups |
(Przestarzałe — użyj navigatePopups zamiast tego). Określa, czy wyskakujące okienka są otwierane asynchronicznie. Po ustawieniu falsewartości , puste wyskakujące okienka są otwierane przed wszystkimi innymi zdarzeniami. Po ustawieniu truena wartość wyskakujące okienka są otwierane podczas tworzenia żądania sieciowego. |
Boolean | false |
navigatePopups |
Ustawia, czy wyskakujące okienka są otwierane, a następnie przechodzi do niej później. Po ustawieniu truewartości na , zostaną otwarte puste wyskakujące okienka, a następnie przejdź do domeny logowania. Po ustawieniu falsena wartość wyskakujące okienka są otwierane bezpośrednio w domenie logowania. Można to ustawić false dla scenariuszy, w których about:blank nie jest obsługiwana, takich jak aplikacje klasyczne lub progresywne aplikacje internetowe. |
Boolean | true |
allowRedirectInIframe |
Domyślnie biblioteka MSAL nie zezwala na inicjowanie operacji przekierowania, gdy aplikacja znajduje się wewnątrz elementu iframe. Ustaw tę flagę, aby true usunąć tę kontrolę. |
Boolean | false |
cryptoOptions |
Obiekt konfiguracji dla operacji kryptograficznych w przeglądarce. | Zobacz Opcje konfiguracji kryptograficznej | Zobacz Opcje konfiguracji kryptograficznej |
pollIntervalMilliseconds |
Interwał czasu w milisekundach między sondami skrótu adresu URL wyskakującego podczas uwierzytelniania. | liczba całkowita (milisekundy) | 30 |
protocolMode |
Wyliczenie reprezentujące tryb protokołu do użycia. Jeśli "AAD"funkcja MSAL działa w punktach końcowych zgodnych ze standardem OIDC w wersji 2; jeśli "OIDC"funkcja działa w innych punktach końcowych zgodnych ze standardem OIDC. |
ciąg | "AAD" |
Opcje konfiguracji rejestratora
| Option | Description | Forma | Wartość domyślna |
|---|---|---|---|
loggerCallback |
Funkcja wywołania zwrotnego, która obsługuje rejestrowanie instrukcji BIBLIOTEKI MSAL. | Funkcja- loggerCallback: (level: LogLevel, message: string, containsPii: boolean): void |
Zobacz powyżej. |
piiLoggingEnabled |
Jeśli to prawda, dane osobowe (PII) są uwzględniane w dziennikach. | Boolean | false |
Opcje konfiguracji kryptograficznej
| Option | Description | Forma | Wartość domyślna |
|---|---|---|---|
useMsrCrypto |
Czy używać kryptografii MSR , jeśli jest dostępna w przeglądarce (i inne interfejsy kryptograficzne nie są dostępne). | Boolean | false |
entropy |
Kryptograficznie silne wartości losowe używane do rozmieszczania biblioteki MSR Crypto (np. crypto.randomBytes(48) z węzła). Zalecane jest 48 bitów entropii. Wymagane, jeśli useMsrCrypto jest włączona. |
Uint8Array |
undefined |
Opcje konfiguracji telemetrii
| Option | Description | Forma | Wartość domyślna |
|---|---|---|---|
application |
Opcje telemetrii dla aplikacji korzystających z MSAL.js | Zobacz poniżej | Zobacz poniżej |
client |
Wystąpienie klienta wydajności telemetrii | IPerformanceClient | StubPerformanceClient |
Telemetria aplikacji
| Option | Description | Forma | Wartość domyślna |
|---|---|---|---|
appName |
Unikatowa nazwa ciągu aplikacji | ciąg | Pusty ciąg "" |
appVersion |
Wersja aplikacji przy użyciu biblioteki MSAL | ciąg | Pusty ciąg "" |