Loggning in MSAL.js
MSAL-appar (Microsoft Authentication Library) genererar loggmeddelanden som kan hjälpa dig att diagnostisera problem. En app kan konfigurera loggning med några rader kod och ha anpassad kontroll över detaljnivån och om personliga data och organisationsdata loggas eller inte. Vi rekommenderar att du skapar en MSAL-loggningsimplementering och tillhandahåller ett sätt för användare att skicka loggar när de har autentiseringsproblem.
Loggningsnivåer
MSAL innehåller flera nivåer av loggningsinformation:
- LogAlways: Ingen nivåfiltrering görs på den här loggnivån. Loggmeddelanden på alla nivåer loggas.
- Kritisk: Loggar som beskriver ett oåterkalleligt program eller en systemkrasch, eller ett oåterkalleligt fel som kräver omedelbar uppmärksamhet.
- Fel: Anger att något har gått fel och att ett fel har genererats. Används för att felsöka och identifiera problem.
- Varning! Det har inte nödvändigtvis förekommit ett fel eller fel, men är avsedda för diagnostik och hitta problem.
- Information: MSAL loggar händelser som är avsedda för informationsändamål som inte nödvändigtvis är avsedda för felsökning.
- Utförligt (standard): MSAL loggar fullständig information om biblioteksbeteendet.
Kommentar
Alla loggnivåer är inte tillgängliga för alla MSAL SDK:s
Personliga och organisatoriska data
Som standard samlar MSAL-loggaren inte in några mycket känsliga personliga data eller organisationsdata. Biblioteket ger möjlighet att aktivera loggning av personliga data och organisationsdata om du bestämmer dig för att göra det.
Följande avsnitt innehåller mer information om MSAL-felloggning för ditt program.
Konfigurera loggning i MSAL.js
Aktivera loggning i MSAL.js (JavaScript) genom att skicka ett loggerOptions-objekt under konfigurationen för att skapa en PublicClientApplication
instans. Den enda obligatoriska konfigurationsparametern är programmets klient-ID. Allt annat är valfritt, men kan krävas beroende på klientorganisation och programmodell.
Objektet loggerOptions har följande egenskaper:
loggerCallback
: en återanropsfunktion som kan tillhandahållas av utvecklaren för att hantera loggning av MSAL-instruktioner på ett anpassat sätt.loggerCallback
Implementera funktionen beroende på hur du vill omdirigera loggar. Funktionen loggerCallback har följande format(level: LogLevel, message: string, containsPii: boolean): void
- Loggnivåerna som stöds är:
Error
,Warning
,Info
ochVerbose
. Standardvärdet ärInfo
.
- Loggnivåerna som stöds är:
piiLoggingEnabled
(valfritt): om värdet är true loggar personliga data och organisationsdata. Som standard är detta falskt så att programmet inte loggar personliga data. Personliga dataloggar skrivs aldrig till standardutdata som Konsol, Logcat eller 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
},
},
};
Nästa steg
Fler kodexempel finns i Microsofts identitetsplattform kodexempel.