Protokollierung

FoxIDs protokolliert standardmäßig Warnungen, Fehler, kritische Fehler und Ereignisse. Die Protokolleinträge enthalten einen Zeitstempel sowie relevante Informationen zur Anfrage oder zum Identitätskontext, wie beispielsweise die IP-Adresse des Clients, sofern verfügbar. Für Diagnosezwecke können pro Umgebung zusätzliche Traces und Metriken aktiviert werden.

Protokollziele

Legen Sie das Protokollziel mit Settings__Options:Log fest. FoxIDs unterstützt drei Optionen:

  • Stdout schreibt Protokolle in die Konsolenausgabe. Diese Option eignet sich für kleine Bereitstellungen unter Docker und Kubernetes, bei denen die Hosting-Plattform Konsolenprotokolle erfasst.
  • OpenSearchAndStdoutErrors schreibt durchsuchbare Protokolle an OpenSearch und gibt Fehler zusätzlich in der Konsolenausgabe aus. Diese Option wird häufig für Bereitstellungen unter Kubernetes verwendet.
  • ApplicationInsights sendet durchsuchbare Protokolle an Azure Application Insights. Diese Option wird häufig für Azure-Bereitstellungen verwendet.

FoxIDs Control kann Protokolle, Nutzungs- und Auditdaten durchsuchen, wenn OpenSearchAndStdoutErrors oder ApplicationInsights konfiguriert ist. Bei Stdout nutzen Sie die von der Hosting-Plattform bereitgestellten Protokollierungsfunktionen.

Stdout-Format und Mindestebene

FoxIDs verwendet für die in stdout geschriebene Ausgabe die standardmäßige .NET Console-Protokollierungskonfiguration unter Logging:Console. Der einfache Textformatierer wird verwendet, sofern kein anderer Formatierer konfiguriert ist. Die mitgelieferte Kubernetes-Bereitstellung wählt den JSON-Formatierer aus, sodass jeder Protokolleintrag als einzelne strukturierte Zeile erfasst werden kann.

Beim JSON-Formatierer wird der Protokolltext in Message geschrieben. Kontexteigenschaften wie RequestId, RequestPath, Mandant und Umgebung werden als separate Felder unter State ausgegeben, während Ausnahmedetails in Exception geschrieben werden. Metriken enthalten außerdem einen numerischen Wert in State.Value. JSON-Einträge verwenden standardmäßig UTC-Zeitstempel im Format yyyy-MM-ddTHH:mm:ss.fffZ. Der einfache Formatierer behält die mehrzeilige Textdarstellung bei.

Legen Sie den JSON-Formatierer über eine Umgebungsvariable fest:

Logging__Console__FormatterName=json

Die Standardwerte für den Zeitstempel können über die Standardoptionen des Formatierers überschrieben werden, zum Beispiel:

Logging__Console__FormatterOptions__TimestampFormat=yyyy-MM-ddTHH:mm:ssZ
Logging__Console__FormatterOptions__UseUtcTimestamp=true

Die Mindestebene der Console-Protokollierung ist standardmäßig Trace. Dadurch bleiben alle Protokolltypen erhalten, die in den Protokolleinstellungen der FoxIDs-Umgebung aktiviert sind. Sie können die Mindestebene für jede Bereitstellung unabhängig erhöhen, zum Beispiel:

Logging__Console__LogLevel__Default=Information

Die Mindestebene wirkt sich wie folgt auf die stdout-Ausgabe aus:

Mindestebene Stdout-Ausgabe
Trace Traces, Ereignisse, Metriken, Warnungen und Fehler
Information Ereignisse, Metriken, Warnungen und Fehler
Warning Warnungen und Fehler
Error Fehler und kritische Fehler
Critical Nur kritische Fehler

Die Mindestebene der Console-Protokollierung ist ein zusätzlicher Filter. Sie aktiviert keine Traces oder Metriken, die in den Protokolleinstellungen der Umgebung deaktiviert sind.

Protokolle in FoxIDs Control

Öffnen Sie Protokolle im FoxIDs Control Client, um zwischen Betriebsprotokollen, Nutzungsprotokollen, Audit-Aufzeichnungen und den Einstellungen für Umgebungsprotokolle zu wechseln.

Protokolle

Auf der Registerkarte Protokolle können Sie Einträge in den Betriebsprotokollen durchsuchen. Wählen Sie den Zeitbereich und die Protokolltypen aus und geben Sie optional einen Suchtext ein, um die Ergebnisse einzugrenzen. Fehler und Warnungen sind standardmäßig ausgewählt. In einer regulären Umgebung sind auch Ereignisse standardmäßig ausgewählt, während Traces und Metriken verfügbar sind, sofern sie in den Protokolleinstellungen der Umgebung aktiviert wurden.

Anfragen, die vor dem Routing zu Mandant und Umgebung zurückgewiesen werden, werden als zurückgewiesene Anfragen klassifiziert und von regulären Ereignissen ausgeschlossen. Wählen Sie im Master-Mandanten zurückgewiesene Anfragen aus, um sie anhand von Anfragepfad, HTTP-Methode und verfügbarem Anfragekontext zu untersuchen. Zurückgewiesene Anfragen sind in anderen Mandanten nicht verfügbar.

Verwandte Einträge sind nach Abfolge und Vorgang gruppiert, sodass Sie einen Authentifizierungsablauf oder eine Anfrage nachverfolgen und deren Ereignisse, Kontexteigenschaften und Ausnahmen überprüfen können.

Betriebsprotokolle durchsuchen

Nutzung

Die Registerkarte Verwendungen fasst die Aktivitäten für einen ausgewählten Zeitrahmen und ein ausgewähltes Intervall zusammen. Sie können Authentifizierungsmethoden, Benutzer, Anmeldungen, Token-Anfragen, zusätzliche Vorgänge und Control API-Aufrufe einbeziehen.

Der ausgewählte Verwaltungsbereich bestimmt, welche Nutzung angezeigt wird:

  • In einer regulären Umgebung enthält das Ergebnis die Nutzung für diese Umgebung.
  • In der Master-Umgebung eines Mandanten enthält das Ergebnis die Nutzung für den gesamten Mandanten und kann auf eine bestimmte Umgebung eingeschränkt werden.
  • In der Master-Umgebung des Master-Mandanten enthält das Ergebnis die Nutzung für die gesamte FoxIDs-Bereitstellung und kann auf einen Mandanten und eine Umgebung eingeschränkt werden.

Verwendungshinweise

Auditprotokolle

Auf der Registerkarte Audit werden sicherheitsrelevante Benutzeraktivitäten und administrative Änderungen protokolliert. Die Suche in Auditprotokollen ist mit OpenSearchAndStdoutErrors und ApplicationInsights verfügbar; sie ist nicht verfügbar, wenn das Protokollziel Stdout ist.

Wählen Sie einen Zeitraum von bis zu sieben Tagen aus und geben Sie optional einen Suchtext ein. Eine Suche gibt bis zu 300 der neuesten übereinstimmenden Einträge zurück und zeigt eine Warnung an, wenn das Ergebnis gekürzt wurde. Der Suchtext wird mit Ereignisname, Audittyp, Aktion, Benutzerkennungen, Authentifizierungsmethode, Registrierungs- oder Dokument-ID, Mandant, Umgebung und geänderten Daten abgeglichen.

Auditeinträge verwenden die folgenden Typen:

Audittyp Protokollierte Aktivität
Data Administrative Datenänderungen, die über FoxIDs Control oder die Control API vorgenommen wurden.
Login Eine abgeschlossene Benutzeranmeldung über eine Authentifizierungsmethode.
Logout Eine abgeschlossene Benutzerabmeldung über eine Authentifizierungsmethode.
ChangePassword Änderung des Kennworts eines Benutzers.
CreateUser Erstellung eines Benutzers während eines Anmeldeablaufs.
RegisterAuthenticatorApp Registrierung einer Authentifizierungs-App für einen Benutzer.

Jeder Eintrag zeigt den Audittyp und den verfügbaren Kontext. Benutzeraktivitäten können Benutzer-ID, E-Mail-Adresse, Telefonnummer, Benutzername, Sitzungs-ID und Authentifizierungsmethode enthalten. Es werden nur Kennungen protokolliert, die in den Anmeldeclaims oder in der Sitzung verfügbar sind. Die Registrierung einer Authentifizierungs-App enthält außerdem ihre RegistrationId.

Bei einem Data-Eintrag bezeichnet DataType die Art der Konfigurationsdaten, DocumentId das betroffene Element und Action ist Create, Update, Save oder Delete. Die formatierten JSON-Daten zeigen die geänderten Werte gegebenenfalls mit before- und after-Werten. Vertrauliche Eigenschaften wie Geheimnisse, Hashes, Nonces und Schlüssel werden maskiert.

Der ausgewählte Verwaltungsbereich bestimmt, welche Auditeinträge durchsucht werden können:

  • In einer regulären Umgebung enthält das Ergebnis Einträge für diese Umgebung.
  • In der Masterumgebung eines Mandanten enthält das Ergebnis Einträge für den Mandanten und kann auf eine bestimmte Umgebung beschränkt werden.
  • In der Masterumgebung des Mastermandanten enthält das Ergebnis Einträge für die gesamte FoxIDs-Installation und kann auf einen Mandanten und eine Umgebung beschränkt werden.

Auditprotokolle durchsuchen

Protokolleinstellungen

Öffnen Sie Protokolle > Einstellungen, um die für die ausgewählte Umgebung aufgezeichneten Diagnosedetails zu konfigurieren:

  • Protokoll-Info-Trace zeichnet Details zu Anmelde- und Abmeldevorgängen auf.
  • Protokoll-Claim-Trace zeichnet die Claims auf, die von Authentifizierungsmethoden und Anwendungsregistrierungen empfangen, weitergeleitet oder ausgegeben wurden.
  • Protokoll-Meldungs-Trace zeichnet empfangene und gesendete Rohprotokollmeldungen auf.
  • Protokoll-Metrik zeichnet Antwortzeiten und Durchsatz auf.

Warnungen, Fehler, kritische Fehler und Ereignisse werden unabhängig von diesen Einstellungen weiterhin protokolliert.

Claim- und Nachrichtenprotokolle können personenbezogene Daten, Tokens und andere sensible Protokollinhalte enthalten. Aktivieren Sie diese nur, wenn sie für Diagnosezwecke erforderlich sind, beschränken Sie den Zugriff auf den Protokollspeicher und legen Sie eine angemessene Aufbewahrungsfrist fest.

Umgebungsprotokolleinstellungen konfigurieren

Log-Stream

Ein Protokollstrom leitet ausgewählte Protokolltypen unabhängig vom konfigurierten primären Protokollziel an ein externes Repository weiter. Fügen Sie beispielsweise einen Azure-Application Insights-Protokollstrom hinzu und wählen Sie aus, welche Protokolltypen FoxIDs senden soll.

Application Insights-Protokollstrom konfigurieren