Informationen zum Audit-Logging in Cloud KMS

Auf dieser Seite werden die Audit-Logs beschrieben, die von Cloud Key Management Service als Teil der Cloud-Audit-Logs erstellt wurden.

Übersicht

Google Cloud-Dienste schreiben Audit-Logs, um Ihnen Antworten auf Fragen wie "Wer hat was, wo und wann getan?" zu liefern. Ihre Cloud-Projekte enthalten nur die Audit-Logs für Ressourcen, die sich direkt im Projekt befinden. Andere Entitäten wie Ordner, Organisationen und Cloud-Rechnungskonten enthalten jeweils eigene Audit-Logs.

Eine allgemeine Übersicht über Cloud-Audit-Logs finden Sie unter Cloud-Audit-Logs. Detaillierte Informationen zu Cloud-Audit-Logs finden Sie unter Audit-Logs verstehen.

Cloud-Audit-Logging legt für jedes Google Cloud-Projekt, jeden Ordner und jede Organisation die folgenden Audit-Logs an:

  • Audit-Logs zur Administratoraktivität
  • Audit-Logs zum Datenzugriff
  • Audit-Logs zu Systemereignissen
  • Audit-Logs zu Richtlinienverstößen

Cloud KMS schreibt Audit-Logs zur Administratoraktivität, in denen Vorgänge mit Änderungen der Konfiguration oder der Metadaten einer Ressource aufgezeichnet werden. Sie können Audit-Logs zur Administratoraktivität nicht deaktivieren.

Cloud KMS schreibt nur dann Audit-Logs zum Datenzugriff, wenn dies explizit aktiviert ist. Audit-Logs zum Datenzugriff enthalten API-Aufrufe, die die Konfiguration oder Metadaten von Ressourcen lesen, sowie nutzergesteuerte API-Aufrufe, die von Nutzern bereitgestellte Ressourcendaten erstellen, ändern oder lesen.

Cloud KMS schreibt keine Audit-Logs zu Systemereignissen.

Cloud KMS schreibt keine Audit-Logs zu Richtlinienverstößen.

Geprüfte Vorgänge

Es folgt eine Zusammenfassung der API-Vorgänge, die dem jeweiligen Audit-Log-Typ in Cloud KMS entsprechen:

Audit-Log-Kategorie Cloud KMS-Vorgänge
Administratoraktivität cloudkms.projects.locations.keyRings.create
cloudkms.projects.locations.keyRings.setIamPolicy
cloudkms.projects.locations.keyRings.cryptoKeys.create
cloudkms.projects.locations.keyRings.cryptoKeys.patch
cloudkms.projects.locations.keyRings.cryptoKeys.setIamPolicy
cloudkms.projects.locations.keyRings.cryptoKeys.updatePrimaryVersion
cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.create
cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.destroy
cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.patch
cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.restore
cloudkms.projects.locations.keyRings.importJobs.create
cloudkms.projects.locations.keyRings.importJobs.setIamPolicy
Datenzugriffslogs (ADMIN_READ) cloudkms.projects.locations.get
cloudkms.projects.locations.list
cloudkms.projects.locations.keyRings.get
cloudkms.projects.locations.keyRings.getIamPolicy
cloudkms.projects.locations.keyRings.list
cloudkms.projects.locations.keyRings.testIamPermissions
cloudkms.projects.locations.keyRings.cryptoKeys.get
cloudkms.projects.locations.keyRings.cryptoKeys.list
cloudkms.projects.locations.keyRings.cryptoKeys.getIamPolicy
cloudkms.projects.locations.keyRings.cryptoKeys.testIamPermissions
cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.get
cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.list
cloudkms.projects.locations.keyRings.importJobs.get
cloudkms.projects.locations.keyRings.importJobs.getIamPolicy
cloudkms.projects.locations.keyRings.importJobs.list

cloudkms.projects.locations.keyRings.importJobs.testIamPermissions
Datenzugriffslogs (DATA_READ) cloudkms.projects.locations.keyRings.cryptoKeys.decrypt
cloudkms.projects.locations.keyRings.cryptoKeys.encrypt
cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.asymmetricDecrypt
cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.asymmetricSign
cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.getPublicKey
Datenzugriffslogs (DATA_WRITE)

Audit-Logformat

Audit-Logeinträge, die in Cloud Logging mit der Loganzeige, der Cloud Logging API oder dem gcloud-Befehlszeilentool aufgerufen werden können, umfassen die folgenden Objekte:

  • Den Logeintrag selbst. Dabei handelt es sich um ein Objekt vom Typ LogEntry. Nützliche Felder sind unter anderem:

    • logName enthält die Projektkennung und den Audit-Logtyp
    • resource enthält das Ziel zum geprüften Vorgang
    • timeStamp enthält die Uhrzeit des geprüften Vorgangs
    • protoPayload enthält die geprüften Informationen
  • Die Audit-Logdaten, bei denen es sich um ein AuditLog-Objekt handelt, das sich im Feld protoPayload des Logeintrags befindet

  • Optionale dienstspezifische Auditinformationen. Das Objekt ist dienstspezifisch. Bei älteren Integrationen befindet sich dieses Objekt im Feld serviceData des AuditLog-Objekts. Neuere Integrationen verwenden das Feld metadata.

Informationen zu anderen Feldern in diesen Objekten sowie zu deren Interpretation finden Sie unter Audit-Logs verstehen.

Logname

Ressourcennamen von Cloud-Audit-Logs geben Aufschluss über das Cloud-Projekt oder über eine andere Google Cloud-Entität, die Inhaber der Audit-Logs ist. Sie zeigen außerdem an, ob das Log Audit-Logging-Daten zur Administratoraktivität, zum Datenzugriff oder zu Systemereignissen enthält. Im folgenden Beispiel sind Lognamen für die Audit-Logs zu Administratoraktivitäten eines Projekts und für die Audit-Logs zu Datenzugriffen einer Organisation enthalten. Die Variablen bezeichnen Projekt- und Organisations-IDs.

projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity
organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fdata_access

Dienstname

Für Audit-Logs von Cloud KMS wird der Dienstname cloudkms.googleapis.com verwendet.

Informationen zu allen Logging-Diensten finden Sie unter Dienste zu Ressourcen zuordnen.

Ressourcentypen

Bei Audit-Logs von Cloud KMS wird der Ressourcentyp audited_resource für alle Audit-Logs verwendet.

Eine Liste weiterer Ressourcentypen finden Sie unter Überwachte Ressourcentypen.

Audit-Logging aktivieren

Audit-Logs zu Administratoraktivitäten sind immer aktiviert. Sie können sie nicht deaktivieren.

Audit-Logs zum Datenzugriff sind standardmäßig deaktiviert und werden nur geschrieben, wenn sie explizit aktiviert werden. Eine Ausnahme bilden die Audit-Logs zum Datenzugriff für BigQuery, die nicht deaktiviert werden können.

Eine Anleitung zum Aktivieren einiger oder aller Audit-Logs zu Datenzugriffen finden Sie unter Datenzugriffslogs konfigurieren.

Wenn Sie Audit-Logs zu Datenzugriffen konfigurieren, kann sich das auf Ihre Logpreise in Cloud Logging auswirken. Lesen Sie dazu den Abschnitt "Preise" auf dieser Seite.

Berechtigungen für Audit-Logs

Welche Audit-Logs Sie ansehen oder exportieren können, wird durch Berechtigungen und Rollen von Identity and Access Management (Cloud IAM) bestimmt. Logs befinden sich in Cloud-Projekten und in einigen anderen Entitäten wie Organisationen, Ordnern und Cloud-Rechnungskonten. Weitere Informationen finden Sie unter Informationen zu Rollen.

Zum Ansehen von Audit-Logs zu Administratoraktivitäten benötigen Sie eine der folgenden IAM-Rollen in dem Projekt, das die Audit-Logs enthält:

Wenn Sie Audit-Logs zum Datenzugriff aufrufen möchten, benötigen Sie in dem Projekt, das Ihre Audit-Logs enthält, eine der folgenden Rollen:

Wenn die verwendeten Audit-Logs nicht aus einem Cloud-Projekt, sondern einer Entität wie einer Organisation stammen, ändern Sie die Projektrollen in geeignete Organisationsrollen.

Logs ansehen

Wenn Sie Audit-Logs suchen und ansehen möchten, müssen Sie die ID des Cloud-Projekts, des Ordners oder der Organisation kennen, für die Sie Audit-Logging-Informationen abrufen möchten. Sie können weitere indexierte LogEntry-Felder angeben, z. B. resource.type. Weitere Informationen erhalten Sie unter Logeinträge schnell finden.

Im Folgenden finden Sie die Namen der Audit-Logs. Sie enthalten Variablen für die IDs des Cloud-Projekts, des Ordners oder der Organisation.

   projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity
   projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fdata_access
   projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fsystem_event
   projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fpolicy

   folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Factivity
   folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fdata_access
   folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fsystem_event
   folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fpolicy

   organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Factivity
   organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fdata_access
   organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fsystem_event
   organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fpolicy

Sie haben mehrere Möglichkeiten, um Ihre Audit-Logeinträge aufzurufen.

Console

Sie können mit dem Log-Explorer in der Cloud Console die Audit-Logeinträge für Ihr Cloud-Projekt abrufen:

  1. Rufen Sie in der Cloud Console die Seite Logging > Log-Explorer auf.

    Zur Seite "Log-Explorer"

  2. Wählen Sie auf der Seite Log-Explorer ein vorhandenes Cloud-Projekt aus.

  3. Führen Sie im Bereich Query Builder folgende Schritte aus:

    • Wählen Sie unter Ressource den Google Cloud-Ressourcentyp aus, dessen Audit-Logs angezeigt werden sollen.

    • Wählen Sie unter Logname den Audit-Logtyp aus, den Sie sehen möchten:

      • Wählen Sie für Audit-Logs zu Administratoraktivitäten die Option activity aus.
      • Wählen Sie für Audit-Logs zum Datenzugriff die Option data_access aus.
      • Wählen Sie für Audit-Logs zu Systemereignissen die Option system_event aus.
      • Wählen Sie für Audit-Logs zu Richtlinienverstößen die Option policy aus.

    Wenn diese Optionen nicht angezeigt werden, sind im Cloud-Projekt keine Audit-Logs dieses Typs verfügbar.

    Ausführliche Informationen zu Abfragen mit dem neuen Log-Explorer finden Sie unter Logabfragen erstellen.

gcloud

Das gcloud-Befehlszeilentool bietet eine Befehlszeile für die Cloud Logging API. Geben Sie dabei in jedem Lognamen eine gültige PROJECT_ID, FOLDER_ID oder ORGANIZATION_ID an.

Führen Sie den folgenden Befehl aus, um Ihre Audit-Logeinträge auf Google Cloud-Projektebene zu lesen:

gcloud logging read "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" --project=PROJECT_ID

Führen Sie den folgenden Befehl aus, um Ihre Audit-Logeinträge auf Ordnerebene zu lesen:

gcloud logging read "logName : folders/FOLDER_ID/logs/cloudaudit.googleapis.com" --folder=FOLDER_ID

Führen Sie den folgenden Befehl aus, um Ihre Audit-Logeinträge auf Organisationsebene zu lesen:

gcloud logging read "logName : organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com" --organization=ORGANIZATION_ID

Weitere Informationen zur Verwendung des gcloud-Tools finden Sie unter Logeinträge lesen.

API

Ersetzen Sie beim Erstellen Ihrer Abfragen die Variablen durch gültige Werte, ersetzen Sie den entsprechenden Audit-Lognamen oder die entsprechenden Kennungen auf Projektebene, Ordnerebene oder Organisationsebene, wie in den Audit-Lognamen aufgeführt. Wenn die Abfrage beispielsweise eine PROJECT_ID enthält, muss sich die von Ihnen angegebene Projekt-ID auf das aktuell ausgewählte Cloud-Projekt beziehen.

So rufen Sie Ihre Audit-Logeinträge mit der Logging API auf:

  1. Rufen Sie den Abschnitt Diese API testen in der Dokumentation für die Methode entries.list auf.

  2. Geben Sie im Teil Anfragetext des Formulars Diese API testen Folgendes ein. Wenn Sie auf dieses vorausgefüllte Formular klicken, wird der Anfragetext automatisch übernommen. Sie müssen jedoch in jedem der Lognamen eine gültige PROJECT_ID angeben.

    {
      "resourceNames": [
        "projects/PROJECT_ID"
      ],
      "pageSize": 5,
      "filter": "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com"
    }
    
  3. Klicken Sie auf Ausführen.

Weitere Informationen zu Abfragen finden Sie unter Logging-Abfragesprache.

Ein Beispiel für einen Audit-Logeintrag und wie Sie die wichtigsten Informationen darin finden, ist in Audit-Logs verstehen enthalten.

Audit-Logs exportieren

Sie können Audit-Logs genauso wie andere Arten von Logs exportieren. Einzelheiten zum Exportieren Ihrer Logs finden Sie unter Logs exportieren. Im Folgenden erfahren Sie mehr über Möglichkeiten zum Exportieren von Audit-Logs:

  • Sie können Kopien von Audit-Logs in Cloud Storage, BigQuery oder Cloud Pub/Sub exportieren, um Audit-Logs über einen längeren Zeitraum hinweg zu behalten oder leistungsfähigere Suchfunktionen zu verwenden. Mit Pub/Sub haben Sie die Möglichkeit, die Logs in andere Anwendungen, andere Repositories und Systeme von Drittanbietern zu exportieren.

  • Zum organisationsübergreifenden Verwalten Ihrer Audit-Logs erstellen Sie zusammengefasste Senken, mit denen sich Logs aus beliebigen oder allen Projekten in der Organisation exportieren lassen.

  • Wenn die aktivierten Audit-Logs zu Datenzugriffen dazu führen, dass Ihre Cloud-Projekte ihr Logkontingent überschreiten, können Sie diese aus Logging exportieren und ausschließen. Weitere Informationen finden Sie unter Logs ausschließen.

Preise

In Cloud Logging werden Ihnen Audit-Logs, die nicht deaktiviert werden können, darunter sämtliche Audit-Logs zu Administratoraktivitäten, nicht in Rechnung gestellt. Audit-Logs zum Datenzugriff, die Sie explizit anfordern, werden Ihnen jedoch in Rechnung gestellt.

Weitere Informationen zu den Preisen für Audit-Logs finden Sie unter Preise für die Operations-Suite von Google Cloud.