Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Aplikacje biblioteki Microsoft Authentication Library (MSAL) generują komunikaty dziennika, które mogą pomóc w diagnozowaniu problemów. Aplikacja może skonfigurować rejestrowanie przy użyciu kilku wierszy kodu i mieć niestandardową kontrolę nad poziomem szczegółowości oraz informacją, czy są rejestrowane dane osobiste i organizacyjne. Zalecamy utworzenie implementacji rejestrowania dla biblioteki MSAL oraz umożliwienie użytkownikom przesyłania dzienników w razie problemów z uwierzytelnianiem.
Poziomy rejestrowania
Biblioteka MSAL udostępnia kilka poziomów szczegółów rejestrowania:
- LogAlways: filtrowanie poziomu nie jest stosowane dla tego poziomu dziennika. Komunikaty dziennika wszystkich poziomów zostaną zarejestrowane.
- Krytyczne: dzienniki, które opisują nieodwracalną awarię aplikacji lub systemu albo katastrofalną awarię, która wymaga natychmiastowej uwagi.
- Błąd: wskazuje, że wystąpił problem i został wygenerowany błąd. Służy do debugowania i identyfikowania problemów.
- Ostrzeżenie: Niekoniecznie wystąpił błąd lub awaria, ale ostrzeżenie jest przeznaczone do diagnostyki i identyfikacji problemów.
- Informacje: biblioteka MSAL będzie rejestrować zdarzenia przeznaczone do celów informacyjnych, a niekoniecznie do debugowania.
- Pełne (ustawienie domyślne): biblioteka MSAL rejestruje pełne szczegóły działania.
Uwaga
Nie wszystkie poziomy dziennika są dostępne dla wszystkich zestawów MSAL SDK
Dane osobowe i organizacyjne
Domyślnie logger MSAL nie przechwytuje żadnych wysoce poufnych danych osobowych ani organizacyjnych. Biblioteka udostępnia opcję włączania rejestrowania danych osobistych i organizacyjnych, jeśli zdecydujesz się to zrobić.
Poniższe sekcje zawierają więcej szczegółowych informacji na temat rejestrowania błędów biblioteki MSAL dla aplikacji.
Konfigurowanie logowania w MSAL.js
Włącz rejestrowanie w MSAL.js (JavaScript) przez przekazanie obiektu loggerOptions podczas tworzenia wystąpienia PublicClientApplication w konfiguracji. 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.
Obiekt loggerOptions ma następujące właściwości:
-
loggerCallback: funkcja callback, która może być udostępniona przez dewelopera w celu niestandardowej obsługi rejestrowania instrukcji MSAL. Zaimplementuj funkcjęloggerCallbackw zależności od tego, jak chcesz przekierowywać dzienniki. Funkcja loggerCallback ma następujący format(level: LogLevel, message: string, containsPii: boolean): void- Obsługiwane poziomy dziennika to:
Error,Warning,InfoiVerbose. Wartość domyślna toInfo.
- Obsługiwane poziomy dziennika to:
-
piiLoggingEnabled(opcjonalnie): jeśli ustawiono wartość true, rejestruje dane osobowe i organizacyjne. Domyślnie jest to wartość false, aby aplikacja nie rejestrowała danych osobowych. Zapisy danych osobowych nigdy nie są zapisywane do domyślnych wyjść, takich jak Konsola, Logcat lub NSLog.
import msal from "@azure/msal-browser"
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",
storeAuthStateInCookie: false,
secureCookies: false
},
system: {
loggerOptions: {
logLevel: msal.LogLevel.Verbose,
loggerCallback: (level, message, containsPii) => {
if (containsPii) {
return;
}
switch (level) {
case msal.LogLevel.Error:
console.error(message);
return;
case msal.LogLevel.Info:
console.info(message);
return;
case msal.LogLevel.Verbose:
console.debug(message);
return;
case msal.LogLevel.Warning:
console.warn(message);
return;
}
},
piiLoggingEnabled: false
},
},
};
Następne kroki
Aby uzyskać więcej przykładów kodu, zapoznaj się z przykładami kodu Platforma tożsamości Microsoft.