Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Le app Libreria di Autenticazione Microsoft (MSAL) generano messaggi di log che consentono di diagnosticare i problemi. Un'app può configurare la registrazione con alcune righe di codice e avere un controllo personalizzato sul livello di dettaglio e se i dati personali e dell'organizzazione vengono registrati o meno. È consigliabile creare un'implementazione della registrazione MSAL e fornire agli utenti un modo per inviare i log in caso di problemi di autenticazione.
La registrazione in MSAL Python è progettata per usare i meccanismi di registrazione Python standard, quindi tutte le conoscenze precedenti della registrazione Python si applicano a MSAL Python.
- Per impostazione predefinita, la registrazione in qualsiasi script di Python è disattivata. Se si vuole abilitare la registrazione di debug per tutti i moduli nell'intero script Python, usare
logging.basicConfig(level=logging.DEBUG). - La maggior parte dei log di MSAL Python è già impostata sul livello di debug, che è disattivato per impostazione predefinita. Tuttavia, se si desidera abilitare la registrazione di debug per eseguire il debug degli ALTRI moduli nello script Python e quindi si desidera silenziare MSAL, è sufficiente disattivare il logger usato da MSAL Python:
logging.getLogger("msal").setLevel(logging.WARN). - MSAL Python non registra informazioni personali (PII). Non esiste quindi nemmeno un interruttore di attivazione della registrazione delle informazioni personali in MSAL Python. Gli sviluppatori di app potrebbero comunque usare la registrazione standard Python per registrare qualsiasi contenuto. In questo modo, l'app si assume la responsabilità di gestire in modo sicuro dati altamente sensibili e seguire i requisiti normativi.
Livelli di registrazione
MSAL offre diversi livelli di dettaglio della registrazione:
-
LogAlways: Non viene eseguito alcun filtraggio per livello per questo livello di log. Verranno registrati i messaggi di log di tutti i livelli. -
Critical: i log che descrivono un arresto anomalo non recuperabile dell'applicazione o del sistema, oppure un guasto catastrofico che richiede attenzione immediata. -
Error: indica che si è verificato un problema e che è stato generato un errore. Usato per il debug e l'identificazione dei problemi. -
Warning: non si è necessariamente verificato un errore o un guasto, ma sono destinati alla diagnostica e all'identificazione dei problemi. -
Informational: MSAL registra gli eventi destinati a scopi informativi non necessariamente destinati al debug. -
Verbose(Impostazione predefinita): MSAL registra i dettagli completi del comportamento della libreria.
Note
Non tutti i livelli di log sono disponibili per tutte le librerie MSAL.
Dati personali e aziendali
Per impostazione predefinita, il logger MSAL non acquisisce dati personali o aziendali estremamente sensibili. La libreria offre la possibilità di abilitare la registrazione dei dati personali e dell'organizzazione se si decide di farlo.
Le sezioni seguenti forniscono altri dettagli sulla registrazione degli errori MSAL per l'applicazione.
MSAL per la registrazione eventi in Python
La registrazione in MSAL per Python sfrutta il modulo di registrazione nella libreria standard Python. È possibile configurare la registrazione MSAL come indicato di seguito (e vederla in azione nel username_password_sample):
Abilitare la registrazione di debug per tutti i moduli
Per impostazione predefinita, la registrazione in qualsiasi script di Python è disattivata. Se si vuole abilitare la registrazione dettagliata per tutti i moduli Python nello script, usare logging.basicConfig con un livello di logging.DEBUG:
import logging
logging.basicConfig(level=logging.DEBUG)
Verranno stampati tutti i messaggi di log forniti al modulo di registrazione nell'output standard.
Configurare il livello di registrazione MSAL
È possibile configurare il livello di registrazione del provider di log di MSAL per Python usando il metodo logging.getLogger() con il nome del logger "msal":
import logging
logging.getLogger("msal").setLevel(logging.WARN)
Configurare la registrazione MSAL con app Azure Insights
I log di Python sono inviati a un gestore di log, che per impostazione predefinita è il StreamHandler. Per inviare i log MSAL ad Application Insights con una chiave di strumentazione, usa l'oggetto AzureLogHandler fornito dalla libreria opencensus-ext-azure.
Per installare, opencensus-ext-azure aggiungi il pacchetto opencensus-ext-azure da PyPI alle tue dipendenze oppure usa pip install:
pip install opencensus-ext-azure
Modificare quindi il gestore predefinito del provider di log "msal" in un'istanza di AzureLogHandler con una chiave di strumentazione impostata nella variabile di ambiente APP_INSIGHTS_KEY:
import logging
import os
from opencensus.ext.azure.log_exporter import AzureLogHandler
APP_INSIGHTS_KEY = os.getenv('APP_INSIGHTS_KEY')
logging.getLogger("msal").addHandler(AzureLogHandler(connection_string='InstrumentationKey={0}'.format(APP_INSIGHTS_KEY)))
Dati personali e aziendali in Python
MSAL per Python non registra dati personali o dati aziendali. Non esiste alcuna proprietà per abilitare o disabilitare la registrazione dei dati personali o dell'organizzazione.
È possibile usare la registrazione standard Python per registrare qualsiasi elemento desiderato, ma si è responsabili della gestione sicura dei dati sensibili e dei requisiti normativi seguenti.
Per ulteriori informazioni sul logging in Python, consulta Logging: how-to di Python.