Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Microsoft Authentication Library (MSAL) uygulamaları sorunları tanılamaya yardımcı olabilecek günlük iletileri oluşturur. Bir uygulama birkaç kod satırıyla günlüğe kaydetmeyi yapılandırabilir ve ayrıntı düzeyi ile kişisel ve kuruluş verilerinin günlüğe kaydedilip kaydedilmediği üzerinde özel denetime sahip olabilir. Bir MSAL günlük uygulaması oluşturmanızı ve kullanıcıların kimlik doğrulaması sorunları olduğunda günlük göndermeleri için bir yol sağlamanızı öneririz.
Günlük düzeyleri
MSAL, çeşitli günlükleme ayrıntı düzeyleri sunar:
-
LogAlways: Bu günlük düzeyinde düzey filtrelemesi yapılmaz. Tüm düzeylerdeki günlük mesajları kaydedilecektir. -
Critical: Kurtarılamayan bir uygulamayı veya sistem kilitlenmesini ya da acil dikkat gerektiren yıkıcı bir hatayı açıklayan günlükler. -
Error: Bir sorun oluştuğunu ve bir hata oluşturulduğunu gösterir. Hata ayıklama ve sorunları tanımlama için kullanılır. -
Warning: Her zaman bir hata ya da arıza olduğu anlamına gelmez, ancak bunlar tanılama ve sorunları tespit etmeye yöneliktir. -
Informational: MSAL, hata ayıklamaya yönelik olması gerekmeyen bilgilendirme amaçlı olayları günlüğe kaydeder. -
Verbose(Varsayılan): MSAL, kitaplık davranışının tüm ayrıntılarını günlüğe kaydeder.
Note
Tüm log düzeyleri, tüm MSAL SDK'ları için mevcut değildir.
Kişisel ve kurumsal veriler
Varsayılan olarak, MSAL günlükçü son derece hassas kişisel veya kuruluş verilerini yakalamaz. Kitaplık, siz karar verirseniz kişisel ve kurumsal verilerin günlüğe kaydedilmesini etkinleştirme seçeneği sunar.
Aşağıdaki bölümlerde uygulamanız için MSAL hata günlüğü hakkında daha fazla ayrıntı sağlanır.
Java için MSAL günlüğe kaydetme
Java için MSAL, Simple Logging Facade for Java (SLF4J) ile uyumlu olduğu sürece, uygulamanızda zaten kullandığınız günlükleme kitaplığını kullanmanıza olanak tanır. Java için MSAL, java.util.logging, Logback ve Log4j gibi çeşitli günlükleme çerçeveleri için basit bir soyutlama olarak SLF4J'yi kullanır. SLF4J, kullanıcının dağıtım sırasında istediği günlükleme çerçevesini entegre etmesine olanak tanır ve dağıtım sırasında otomatik olarak Logback'e bağlanır. MSAL günlükleri konsola yazılır. Bu makalede, Spring Boot web uygulamasında logback çerçevesini kullanarak MSAL4J günlüğünü etkinleştirme işlemi gösterilmektedir.
Günlüğe kaydetmeyi uygulamak için
pom.xmliçinelogbackpaketini ekleyin.<dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>1.2.3</version> </dependency>klasörüne
resourcesgidin ve adlılogback.xmlbir dosya ekleyin ve aşağıdaki kodu ekleyin. Bu işlem günlükleri konsola ekler. Ekleyiciyiclass, günlükleri bir dosyaya, veritabanına veya seçtiğiniz herhangi bir ekleyiciye yazacak şekilde değiştirebilirsiniz.<?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>Ana yöntemden önce
logging.configözelliğinilogback.xmldosyasının konumuna ayarlayın.MsalWebSampleApplication.javaöğesine gidin ve aşağıdaki kodu genel sınıfaMsalWebSampleApplicationekleyin.@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); } }
Kiracınızda, web uygulaması ve web API'si için ayrı uygulama kayıtlarına ihtiyacınız olacak. Uygulama kaydı ve web API'sinin kapsamını ortaya çıkarmak için kullanıcıların kimliğini doğrulayan ve web API'lerini çağıran bir web uygulaması senaryosundaki adımları izleyin.
Diğer günlükleme çerçevelerine nasıl bağlanılacağına ilişkin yönergeler için SLF4J belgelerine bakın.
Kişisel bilgiler ve kuruluş bilgileri
MSAL günlüğü varsayılan olarak kişisel veya kurumsal verileri yakalamaz veya günlüğe kaydetmez. Aşağıdaki örnekte, kişisel veya kurumsal verilerin günlüğe kaydedilmesi varsayılan olarak kapalıdır:
PublicClientApplication app2 = PublicClientApplication.builder(PUBLIC_CLIENT_ID)
.authority(AUTHORITY)
.build();
İstemci uygulaması oluşturucusunda logPii() ayarını yaparak kişisel ve kurumsal veri günlüğe kaydını etkinleştirin. Kişisel veya kurumsal veri günlüğünü açarsanız, uygulamanızın son derece hassas verileri güvenli bir şekilde işleme ve herhangi bir mevzuat gereksinimlerine uyma sorumluluğunu üstlenmesi gerekir.
Aşağıdaki örnekte, kişisel veya kurumsal verilerin günlüğe kaydedilmesi etkinleştirilmiştir:
PublicClientApplication app2 = PublicClientApplication.builder(PUBLIC_CLIENT_ID)
.authority(AUTHORITY)
.logPii(true)
.build();
Sonraki Adımlar
Daha fazla kod örneği için bkz. Microsoft kimlik platformu kod örnekleri.