Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
De Microsoft Authentication Library-apps (MSAL) genereren logboekberichten waarmee problemen kunnen worden vastgesteld. Een app kan logboekregistratie met een paar regels code configureren en aangepaste controle hebben over het detailniveau en of persoonlijke en organisatorische gegevens al dan niet worden vastgelegd. U wordt aangeraden een IMPLEMENTATIE van MSAL-logboekregistratie te maken en gebruikers een manier te bieden om logboeken in te dienen wanneer ze verificatieproblemen ondervinden.
Logboekregistratieniveaus
MSAL biedt verschillende niveaus van logboekregistratiedetails:
- LogAlways: Er wordt geen niveaufiltering uitgevoerd op dit logboekniveau. Logboekberichten van alle niveaus worden vastgelegd.
- Kritiek: logboeken die een onherstelbare toepassing of systeemcrash beschrijven, of een onherstelbare fout waarvoor onmiddellijke aandacht is vereist.
- Fout: Geeft aan dat er iets mis is gegaan en er een fout is gegenereerd. Wordt gebruikt voor foutopsporing en het identificeren van problemen.
- Waarschuwing: er is niet noodzakelijkerwijs sprake van een fout of storing, maar deze zijn bedoeld voor diagnose en het opsporen van problemen.
- Informatief: MSAL zal gebeurtenissen vastleggen die zijn bedoeld voor informatieve doeleinden, niet noodzakelijkerwijs bedoeld voor foutopsporing.
- Uitgebreid (standaard): MSAL registreert de volledige details van het gedrag van de bibliotheek.
Note
Niet alle logboekniveaus zijn beschikbaar voor alle MSAL SDK's
Persoonlijke en organisatorische gegevens
Standaard legt de MSAL-logboekregistratie geen zeer gevoelige persoonlijke of organisatorische gegevens vast. De bibliotheek biedt de optie om persoonlijke en organisatiegegevens in te schakelen als u dit wilt doen.
In de volgende secties vindt u meer informatie over MSAL-foutenlogboekregistratie voor uw toepassing.
MSAL voor iOS en macOS-logboekregistratie-ObjC
Stel een callback in om MSAL-logboekregistratie vast te leggen en op te nemen in de logboekregistratie van uw eigen toepassing. De handtekening voor de callback ziet er als volgt uit:
/*!
The LogCallback block for the MSAL logger
@param level The level of the log message
@param message The message being logged
@param containsPII If the message might contain Personally Identifiable Information (PII)
this will be true. Log messages possibly containing PII will not be
sent to the callback unless PIllLoggingEnabled is set to YES on the
logger.
*/
typedef void (^MSALLogCallback)(MSALLogLevel level, NSString *message, BOOL containsPII);
Voorbeeld:
[MSALGlobalConfig.loggerConfig setLogCallback:^(MSALLogLevel level, NSString *message, BOOL containsPII)
{
if (!containsPII)
{
#if DEBUG
// IMPORTANT: MSAL logs may contain sensitive information. Never output MSAL logs with NSLog, or print, directly unless you're running your application in debug mode. If you're writing MSAL logs to file, you must store the file securely.
NSLog(@"MSAL log: %@", message);
#endif
}
}];
Persoonlijke gegevens
Standaard worden in MSAL geen persoonsgegevens verzameld of gelogd. Met de bibliotheek kunnen app-ontwikkelaars dit inschakelen via een eigenschap in de MSALLogger-klasse. Door in te schakelen pii.Enabled, neemt de app de verantwoordelijkheid voor het veilig verwerken van zeer gevoelige gegevens en het volgen van wettelijke vereisten.
// By default, the `MSALLogger` doesn't capture any PII
// PII will be logged
MSALGlobalConfig.loggerConfig.piiEnabled = YES;
// PII will NOT be logged
MSALGlobalConfig.loggerConfig.piiEnabled = NO;
Logboekregistratieniveaus
Als u het logboekregistratieniveau wilt instellen wanneer u zich aanmeldt met MSAL voor iOS en macOS, gebruikt u een van de volgende waarden:
| Level | Description |
|---|---|
MSALLogLevelNothing |
Alle logboekregistratie uitschakelen |
MSALLogLevelError |
Standaardniveau, geeft alleen informatie weer wanneer er fouten optreden |
MSALLogLevelWarning |
Warnings |
MSALLogLevelInfo |
Bibliotheekinvoerpunten, met parameters en verschillende sleutelhangerbewerkingen |
MSALLogLevelVerbose |
API-tracering |
Voorbeeld:
MSALGlobalConfig.loggerConfig.logLevel = MSALLogLevelVerbose;
Indeling van logboekberichten
Het berichtgedeelte van MSAL-logboekberichten heeft de indeling van TID = <thread_id> MSAL <sdk_ver> <OS> <OS_ver> [timestamp - correlation_id] message
Voorbeeld:
TID = 551563 MSAL 0.2.0 iOS Sim 12.0 [2018-09-24 00:36:38 - 36764181-EF53-4E4E-B3E5-16FE362CFC44] acquireToken returning with error: (MSALErrorDomain, -42400) User cancelled the authorization session.
Het leveren van correlatie-id's en tijdstempels is handig voor het opsporen van problemen. Informatie over tijdstempels en correlatie-id's is beschikbaar in het logboekbericht. De enige betrouwbare plaats om ze op te halen, is afkomstig van MSAL-logboekregistratieberichten.
Volgende stappen
Raadpleeg Microsoft identity platform codevoorbeelden voor meer codevoorbeelden.