Von pgAudit für AlloyDB for PostgreSQL generierte Audit-Logs ansehen

Auf dieser Seite wird beschrieben, wie Sie die von pgAudit generierten Prüfprotokolle aufrufen. So können Sie Protokolle konfigurieren, die häufig für die Einhaltung von behördlichen, finanziellen und ISO-Zertifizierungen erforderlich sind. Auf dieser Seite wird auch das Logformat für pgAudit beschrieben. Weitere Informationen zu pgAudit finden Sie unter pgAudit.

Hinweis

So rufen Sie Audit-Logs auf:

Audit-Logs ansehen

Die generierten pgAudit-Logs für eine bestimmte Instanz werden als Audit-Logs zum Datenzugriff an Cloud Logging gesendet.

Sie können die generierten pgAudit-Logs mit der Anwendung Log-Explorer aufrufen.

Wenn Sie die pgAudit-Logs aufrufen möchten, wählen Sie in der Anwendung Log-Explorer den Logfilter cloudaudit.googleapis.com/data_access aus.

Wenn Sie alle pgAudit-Logs für ein AlloyDB-Projekt aufrufen möchten, führen Sie die folgende Abfrage über die Oberfläche Erweiterte Filter aus:

resource.type="alloydb.googleapis.com/Instance"
logName="projects/your-project-name/logs/cloudaudit.googleapis.com%2Fdata_access"
protoPayload.request.@type="type.googleapis.com/google.cloud.alloydb.audit.v1.PgAuditEntry"

Logformat für pgAudit

Jeder pgAudit-Logeintrag in den Audit-Logs zum Datenzugriff enthält Felder, die die für eine Abfrage erfassten Informationen enthalten. Weitere Informationen zu diesen Logeintragsfeldern finden Sie in der pgAudit-Dokumentation.

Beispiel für einen pgAudit-Logeintrag:

{
  protoPayload: {
    @type: "type.googleapis.com/google.cloud.audit.AuditLog"
    methodName: "alloydb.instances.query"
    request: {
      @type: "type.googleapis.com/google.cloud.alloydb.audit.v1.PgAuditEntry"
      auditClass: "READ"
      auditType: "SESSION"
      chunkCount: "1"
      chunkIndex: "1"
      command: "SELECT"
      database: "finance"
      databaseSessionId: 2209692
      parameter: "[not logged]"
      statement: "SELECT * FROM revenue"
      statementId: 2
      substatementId: 1
      user: "alice"
    }
  }
}

Im Folgenden werden die Felder in den Audit-Logs zum Datenzugriff beschrieben:

  • auditClass Der Typ der protokollierten Anweisung. Mögliche Werte sind READ, WRITE, FUNCTION, ROLE, DDL, MISC und MISC_SET.
  • auditType SESSION oder OBJECT.
  • chunkCount Die Blockaufteilung kann mit den Daten in den Feldern parameter und statement erfolgen. Das Feld chunkCount gibt die Gesamtzahl der Blöcke an. Sehen Sie sich auch die Beschreibung des Felds chunkIndex an.
  • chunkIndex: Gibt die Indexnummer der Datenblöcke in den Feldern parameter und statement im aktuellen request-Container an. Die erste Zahl ist 1. Sehen Sie sich auch die Beschreibung des Felds chunkCount an.
  • Befehl Beispiel: ALTER TABLE oder SELECT.
  • Parameter Das Feld chunkIndex kann den Inhalt dieses Felds bestimmen. Siehe die Beschreibung des Felds chunkIndex. Wenn der Wert für „pgaudit.log_parameter“ festgelegt ist, kann das Feld parameter die Anweisungsparameter als CSV-Daten in Anführungszeichen enthalten. Wenn keine Parameter vorhanden sind, enthält dieses Feld [none]. Andernfalls enthält dieses Feld [not logged].
  • statement. Anweisung, die auf dem Back-End ausgeführt wird. Das Feld chunkIndex kann den Inhalt des Felds statement bestimmen. Siehe die Beschreibung des Felds chunkIndex.
  • statementId Eindeutige Anweisungs-ID für diese Sitzung. Jede Anweisungs-ID stellt einen Back-End-Aufruf dar. Anweisungs-IDs sind sequenziell, selbst wenn einige Anweisungen nicht protokolliert werden.
  • substatementId Sequenzielle ID für jede Unteranweisung in der Hauptanweisung.

Nächste Schritte