Azure Active Directory B2C: raccolta di logAzure Active Directory B2C: Collecting Logs

Questo articolo illustra i passaggi per la raccolta di log da Azure AD B2C in modo che sia possibile diagnosticare con criteri personalizzati.This article provides steps for collecting logs from Azure AD B2C so that you can diagnose problems with your custom policies.

Nota

I log attività dettagliati descritti qui attualmente sono progettati SOLO per facilitare lo sviluppo di criteri personalizzati.Currently, the detailed activity logs described here are designed ONLY to aid in development of custom policies. Non usare la modalità di sviluppo in fase di produzione.Do not use development mode in production. I log raccolgono tutte le attestazioni inviate verso e dai provider di identità durante lo sviluppo.Logs collect all claims sent to and from the identity providers during development. Se usato in fase di produzione, lo sviluppatore si assume la responsabilità delle informazioni personali raccolte nel log di App Insights di cui è proprietario.If used in production, the developer assumes responsibility for PII (Privately Identifiable Information) collected in the App Insights log that they own. Questi log dettagliati vengono raccolti solo quando il criterio è in MODALITÀ DI SVILUPPO.These detailed logs are only collected when the policy is placed on DEVELOPMENT MODE.

Usare Application InsightsUse Application Insights

Azure Active Directory B2C supporta una funzionalità per l'invio di dati ad Application Insights,Azure AD B2C supports a feature for sending data to Application Insights. servizio che consente di diagnosticare le eccezioni e di visualizzare i problemi di prestazioni delle applicazioni.Application Insights provides a way to diagnose exceptions and visualize application performance issues.

Configurazione di Application InsightsSetup Application Insights

  1. Accedere al portale di Azure.Go to the Azure portal. Verificarsi di trovarsi nel tenant con la propria sottoscrizione di Azure (non il tenant di Azure AD B2C in uso).Ensure you are in the tenant with your Azure subscription (not your Azure AD B2C tenant).
  2. Fare clic su + Nuovo nel menu di navigazione a sinistra.Click + New in the left-hand navigation menu.
  3. Cercare e selezionare Application Insights e quindi fare clic su Crea.Search for and select Application Insights, then click Create.
  4. Completare il modulo e fare clic su Crea.Complete the form and click Create. Selezionare Generale come valore per Tipo di applicazione.Select General for the Application Type.
  5. Dopo aver creato la risorsa, aprire la risorsa di Application Insights.Once the resource has been created, open the Application Insights resource.
  6. Fare clic su Proprietà nel menu a sinistra.Find Properties in the left-menu, and click on it.
  7. Copiare il valore di Chiave di strumentazione e salvarlo per la sezione successiva.Copy the Instrumentation Key and save it for the next section.

Configurare i criteri personalizzatiSet up the custom policy

  1. Aprire il file RP, ad esempio SignUpOrSignin.xml.Open the RP file (for example, SignUpOrSignin.xml).
  2. Aggiungere gli attributi seguenti all'elemento <TrustFrameworkPolicy>:Add the following attributes to the <TrustFrameworkPolicy> element:

    DeploymentMode="Development"
    UserJourneyRecorderEndpoint="urn:journeyrecorder:applicationinsights"
    
  3. Se non esiste già, aggiungere un nodo figlio <UserJourneyBehaviors> al nodo <RelyingParty>.If it doesn't exist already, add a child node <UserJourneyBehaviors> to the <RelyingParty> node. Deve trovarsi immediatamente dopo <DefaultUserJourney ReferenceId="YourPolicyName" />.It must be located immediately after the <DefaultUserJourney ReferenceId="YourPolicyName" />

  4. Aggiungere il nodo seguente come figlio dell'elemento <UserJourneyBehaviors>.Add the following node as a child of the <UserJourneyBehaviors> element. Assicurarsi di sostituire {Your Application Insights Key} con la chiave di strumentazione ottenuta da Application Insights nella sezione precedente.Make sure to replace {Your Application Insights Key} with the Instrumentation Key that you obtained from Application Insights in the previous section.

    <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.DeveloperMode="true" tells ApplicationInsights to expedite the telemetry through the processing pipeline, good for development, but constrained at high volumes.
    • ClientEnabled="true" invia lo script di Application Insights lato client per tenere traccia della visualizzazione della pagina e degli errori del client (non necessari).ClientEnabled="true" sends the ApplicationInsights client-side script for tracking page view and client-side errors (not needed).
    • ServerEnabled="true" invia l'elemento JSON UserJourneyRecorder esistente come evento personalizzato ad Application Insights.ServerEnabled="true" sends the existing UserJourneyRecorder JSON as a custom event to Application Insights. Esempio:Sample:
    <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.Upload the policy.

Visualizza i log in Application InsightsSee the logs in Application Insights

Nota

I log di Application Insights possono essere visualizzati dopo un breve ritardo (meno di cinque minuti).There is a short delay (less than five minutes) before you can see new logs in Application Insights.

  1. Aprire la risorsa di Application Insights creata nel portale di Azure.Open the Application Insights resource that you created in the Azure portal.
  2. Nel menu Panoramica fare clic su Analytics.In the Overview menu, click on Analytics.
  3. Aprire una nuova scheda in Application Insights.Open a new tab in Application Insights.
  4. Di seguito viene indicato un elenco di query che è possibile usare per visualizzare i logHere is a list of queries you can use to see the logs
QueryQuery DescrizioneDescription
tracestraces Consente di visualizzare tutti i log generati da Azure AD B2CSee all of the logs generated by Azure AD B2C
traces \traces \ where timestamp > ago(1d)where timestamp > ago(1d)

Le voci possono essere lunghe.The entries may be long. Per visualizzarle meglio è possibile esportarle in formato CSV.Export to CSV for a closer look.

Per altre informazioni sullo strumento Analytics, vedere qui.You can learn more about the Analytics tool here.

Nota

La community ha sviluppato un visualizzatore di percorsi utente per supportare gli sviluppatori di identità.The community has developed a user journey viewer to help identity developers. Non è supportato da Microsoft ed reso disponibile esclusivamente così com'è.It is not supported by Microsoft and made available strictly as-is. Legge l'istanza di Application Insights e restituisce una visualizzazione strutturata degli eventi di percorso utente.It reads from your Application Insights instance and provides a well-structure view of the user journey events. Ottenere il codice sorgente e distribuirlo nella soluzione.You obtain the source code and deploy it in your own solution.

Nota

I log attività dettagliati descritti qui attualmente sono progettati SOLO per facilitare lo sviluppo di criteri personalizzati.Currently, the detailed activity logs described here are designed ONLY to aid in development of custom policies. Non usare la modalità di sviluppo in fase di produzione.Do not use development mode in production. I log raccolgono tutte le attestazioni inviate verso e dai provider di identità durante lo sviluppo.Logs collect all claims sent to and from the identity providers during development. Se usato in fase di produzione, lo sviluppatore si assume la responsabilità delle informazioni personali raccolte nel log di App Insights di cui è proprietario.If used in production, the developer assumes responsibility for PII (Privately Identifiable Information) collected in the App Insights log that they own. Questi log dettagliati vengono raccolti solo quando il criterio è in MODALITÀ DI SVILUPPO.These detailed logs are only collected when the policy is placed on DEVELOPMENT MODE.

Repository GitHub di esempi di criteri personalizzate non supportati e strumenti correlatiGithub Repository for Unsupported Custom Policy Samples and Related tools

Passaggi successiviNext Steps

Esplorare i dati in Application Insights per capire il funzionamento di B2C sottostante del framework dell'esperienza di gestione delle identità per distribuire le proprie esperienze di gestione delle identità.Explore the data in Application Insights to help you understand how the Identity Experience Framework underlying B2C works to deliver your own identity experiences.