Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
MICROSOFT AUTHENTICATION LIBRARY-apparna (MSAL) 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. -
Critical: Loggar som beskriver ett program eller en systemkrasch som inte kan återställas, eller ett oåterkalleligt fel som kräver omedelbar uppmärksamhet. -
Error: Anger att något har gått fel och att ett fel har genererats. Används för att felsöka och identifiera problem. -
Warning: Det har inte nödvändigtvis varit ett fel eller misslyckande, utan de är avsedda för diagnostik och för att identifiera problem. -
Informational: MSAL loggar händelser som är avsedda för informationsändamål som inte nödvändigtvis är avsedda för felsökning. -
Verbose(Standard): MSAL loggar fullständig information om biblioteksbeteende.
Note
Alla loggnivåer är inte tillgängliga för alla MSAL-SDK:er.
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.
MSAL för Java loggning
MED MSAL för Java kan du använda loggningsbiblioteket som du redan använder med din app, så länge det är kompatibelt med Simple Logging Facade for Java (SLF4J). MSAL för Java använder SLF4J som en enkel abstraktion för olika loggningsramverk, till exempel java.util.logging, Logback och Log4j. Med SLF4J kan användaren ansluta det önskade loggningsramverket vid distributionstillfället och automatiskt binda till Logback vid distributionstillfället. MSAL-loggar skrivs till konsolen. Den här artikeln visar hur du aktiverar MSAL4J-loggning med hjälp av logback-ramverket i ett Spring Boot-webbprogram.
För att implementera loggning inkluderar du paketet
logbackipom.xml.<dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>1.2.3</version> </dependency>Gå till
resourcesmappen och lägg till en fil med namnetlogback.xmloch infoga följande kod. Då läggs loggarna till i konsolen. Du kan ändra tilläggetclasstill att skriva loggar till en fil, databas eller valfri tilläggsfil.<?xml version="1.0" encoding="UTF-8"?> <configuration> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern> </encoder> </appender> <root level="debug"> <appender-ref ref="STDOUT" /> </root> </configuration>Ange egenskapen
logging.configtill sökvägen för filenlogback.xmlinnan huvudmetoden. Navigera tillMsalWebSampleApplication.javaoch lägg till följande kod i denMsalWebSampleApplicationpublika klassen.@SpringBootApplication public class MsalWebSampleApplication { static { System.setProperty("logging.config", "C:\Users\<your path>\src\main\resources\logback.xml"); } public static void main(String[] arrgs) { // Console.log("main"); // System.console().printf("Hello"); // System.out.printf("Hello %s!%n", "World"); System.out.printf("%s%n", "Hello World"); SpringApplication.run(MsalWebSampleApplication.class, args); } }
I din klientorganisation behöver du separata appregistreringar för webbappen och webb-API:et. För appregistrering och visning av webb-API-omfånget följer du stegen i scenariot En webbapp som autentiserar användare och anropar webb-API:er.
Anvisningar om hur du binder till andra loggningsramverk finns i SLF4J-dokumentationen.
Personlig information och organisationsinformation
Som standard samlar MSAL-loggning inte in eller loggar några personliga data eller organisationsdata. I följande exempel är loggning av personliga data eller organisationsdata inaktiverade som standard:
PublicClientApplication app2 = PublicClientApplication.builder(PUBLIC_CLIENT_ID)
.authority(AUTHORITY)
.build();
Aktivera personlig dataloggning och organisationsdataloggning genom att ställa in logPii() på klientprogramverktyget. Om du aktiverar personlig dataloggning eller organisationsdataloggning måste din app ta ansvar för att hantera mycket känsliga data på ett säkert sätt och uppfylla eventuella regelkrav.
I följande exempel är loggning av personliga data eller organisationsdata aktiverade:
PublicClientApplication app2 = PublicClientApplication.builder(PUBLIC_CLIENT_ID)
.authority(AUTHORITY)
.logPii(true)
.build();
Nästa steg
Fler kodexempel finns i Microsofts identitetsplattform kodexempel.