Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Приложения Microsoft Authentication Library (MSAL) создают сообщения журнала, которые помогают диагностировать проблемы. Приложение может настроить ведение журнала с несколькими строками кода и иметь пользовательский контроль над уровнем детализации и независимо от того, регистрируются ли персональные и организационные данные. Рекомендуется создать реализацию ведения журнала MSAL и предоставить пользователям способ отправки журналов при наличии проблем с проверкой подлинности.
Уровни ведения журнала
MSAL предоставляет несколько уровней детализации журналирования:
-
LogAlways: Для этого уровня журнала фильтрация не выполняется. Будут регистрироваться сообщения всех уровней. -
Critical: журналы, описывающие неустранимый сбой приложения или системы, или катастрофический сбой, требующий немедленного внимания. -
Error: указывает, что что-то пошло не так, и возникла ошибка. Используется для отладки и выявления проблем. -
Warning: не обязательно произошла ошибка или сбой, но предназначены для диагностики и выявления проблем. -
Informational: MSAL регистрирует события, предназначенные для информационных целей, не обязательно предназначенных для отладки. -
Verbose(по умолчанию): MSAL регистрирует полные сведения о поведении библиотеки.
Note
Не все уровни ведения журнала доступны во всех пакетах SDK MSAL.
Персональные и организационные данные
По умолчанию средство ведения журнала MSAL не записывает конфиденциальные персональные или организационные данные. Библиотека предоставляет возможность включить ведение журнала персональных и организационных данных, если вы решите это сделать.
В следующих разделах приведены дополнительные сведения о ведении журнала ошибок MSAL для приложения.
MSAL для ведения журнала Java
MSAL для Java позволяет использовать ту библиотеку журналирования, которая уже используется в вашем приложении, если она совместима с Simple Logging Facade for Java (SLF4J). MSAL для Java использует SLF4J в качестве простой абстракции для различных платформ ведения журнала, таких как java.util.log, Logback и Log4j. SLF4J позволяет пользователю подключаться к требуемой платформе ведения журнала во время развертывания и автоматически привязывается к Logback во время развертывания. Журналы MSAL записываются в консоль. В этой статье показано, как включить логирование MSAL4J с помощью фреймворка Logback в веб-приложении Spring Boot.
Чтобы реализовать ведение журнала, включите
logbackпакет вpom.xml.<dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>1.2.3</version> </dependency>Перейдите в папку
resources, добавьте файл с именемlogback.xmlи вставьте следующий код. Это добавит журналы в консоль. Вы можете изменить добавочный элементclassдля записи журналов в файл, базу данных или любой нужный элемент.<?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>logging.configЗадайте для свойства расположениеlogback.xmlфайла перед основным методом. Перейдите кMsalWebSampleApplication.javaи добавьте следующий код в открытый классMsalWebSampleApplication.@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); } }
В вашей аренде вам потребуются отдельные регистрации приложений для веб-приложения и веб-API. Для регистрации приложений и предоставления области веб-API выполните действия в сценарии веб-приложения, которое проверяет подлинность пользователей и вызывает веб-API.
Инструкции по привязке к другим платформам ведения журнала см. в документации по SLF4J.
Личные данные и сведения об организации
По умолчанию ведение журнала MSAL не записывает личные или организационные данные. В следующем примере ведение журнала персональных данных или данных организации отключено по умолчанию:
PublicClientApplication app2 = PublicClientApplication.builder(PUBLIC_CLIENT_ID)
.authority(AUTHORITY)
.build();
Включите журналирование личных и организационных данных, установив logPii() в построителе клиентского приложения. Если вы включаете ведение журнала персональных или организационных данных, ваше приложение должно отвечать за безопасную обработку конфиденциальных данных и соблюдение любых нормативных требований.
В следующем примере включена регистрация персональных или организационных данных:
PublicClientApplication app2 = PublicClientApplication.builder(PUBLIC_CLIENT_ID)
.authority(AUTHORITY)
.logPii(true)
.build();
Дальнейшие действия
Дополнительные примеры кода см. в разделе Примеры кода для платформы Microsoft Identity.