Azure Active Directory B2C: raccolta di log

Questo articolo illustra i passaggi per la raccolta di log da Azure AD B2C in modo che sia possibile diagnosticare con criteri personalizzati.

Usare Application Insights

Azure Active Directory B2C supporta una funzionalità per l'invio di dati ad Application Insights, servizio che consente di diagnosticare le eccezioni e di visualizzare i problemi di prestazioni delle applicazioni.

Configurazione di Application Insights

  1. Accedere al portale di Azure. Verificarsi di trovarsi nel tenant con la propria sottoscrizione di Azure (non il tenant di Azure AD B2C in uso).
  2. Fare clic su + Nuovo nel menu di navigazione a sinistra.
  3. Cercare e selezionare Application Insights e quindi fare clic su Crea.
  4. Completare il modulo e fare clic su Crea. Selezionare Generale come valore per Tipo di applicazione.
  5. Dopo aver creato la risorsa, aprire la risorsa di Application Insights.
  6. Fare clic su Proprietà nel menu a sinistra.
  7. Copiare il valore di Chiave di strumentazione e salvarlo per la sezione successiva.

Configurare i criteri personalizzati

  1. Aprire il file RP, ad esempio SignUpOrSignin.xml.
  2. Aggiungere gli attributi seguenti all'elemento <TrustFrameworkPolicy>:

    DeploymentMode="Development"
    UserJourneyRecorderEndpoint="urn:journeyrecorder:applicationinsights"
    
  3. Se non esiste già, aggiungere un nodo figlio <UserJourneyBehaviors> al nodo <RelyingParty>. Deve trovarsi immediatamente dopo <DefaultUserJourney ReferenceId="YourPolicyName" />.

  4. Aggiungere il nodo seguente come figlio dell'elemento <UserJourneyBehaviors>. Assicurarsi di sostituire {Your Application Insights Key} con la chiave di strumentazione ottenuta da Application Insights nella sezione precedente.

    <JourneyInsights TelemetryEngine="ApplicationInsights" InstrumentationKey="{Your Application Insights Key}" DeveloperMode="true" ClientEnabled="false" ServerEnabled="true" TelemetryVersion="1.0.0" />
    
    • DeveloperMode="true" indica ad Application Insights di accelerare la telemetria nella pipeline di elaborazione, valida per lo sviluppo, ma vincolata a volumi elevati.
    • ClientEnabled="true" invia lo script di Application Insights lato client per tenere traccia della visualizzazione della pagina e degli errori del client (non necessari).
    • ServerEnabled="true" invia l'elemento JSON UserJourneyRecorder esistente come evento personalizzato ad Application Insights. Il codice XML finale avrà un aspetto simile al seguente:
    <TrustFrameworkPolicy
     ...
     TenantId="fabrikamb2c.onmicrosoft.com"
     PolicyId="SignUpOrSignInWithAAD"
     DeploymentMode="Development"
     UserJourneyRecorderEndpoint="urn:journeyrecorder:applicationinsights"
    >
     ...
     <RelyingParty>
       <DefaultUserJourney ReferenceId="YourPolicyName" />
       <UserJourneyBehaviors>
         <JourneyInsights TelemetryEngine="ApplicationInsights" InstrumentationKey="{Your Application Insights Key}" DeveloperMode="true" ClientEnabled="false" ServerEnabled="true" TelemetryVersion="1.0.0" />
       </UserJourneyBehaviors>
       ...
    </TrustFrameworkPolicy>
    
  5. Caricare i criteri.

Visualizza i log in Application Insights

Nota

I log di Application Insights possono essere visualizzati dopo un breve ritardo (meno di 5 minuti).

  1. Aprire la risorsa di Application Insights creata nel portale di Azure.
  2. Nel menu Panoramica fare clic su Analytics.
  3. Aprire una nuova scheda in Application Insights.
  4. Di seguito viene indicato un elenco di query che è possibile usare per visualizzare i log
Query Descrizione
traces Consente di visualizzare tutti i log generati da Azure AD B2C
traces | where timestamp > ago(1d) Consente di visualizzare tutti i log generati da Azure AD B2C nell'ultimo giorno

Le voci possono essere lunghe. Per visualizzarle meglio è possibile esportarle in formato CSV.

Per altre informazioni sullo strumento Analytics, vedere qui.

Nota

La community ha sviluppato un visualizzatore di eventi userjourney per supportare gli sviluppatori di identità. Non è supportato da Microsoft ed reso disponibile esclusivamente così com'è. Legge l'istanza di Application Insights e restituisce una visualizzazione strutturata degli eventi userjourney. Ottenere il codice sorgente e distribuirlo nella soluzione.

Repository GitHub di esempi di criteri personalizzate non supportati e strumenti correlati