Best Practices für Cloud-Audit-Logging

In diesem Dokument wird eine Abfolge von Audit-Logging-Aufgaben empfohlen, mit denen Sie in Ihrer Organisation für Sicherheit sorgen und Risiken minimieren können.

Dieses Dokument ist keine vollständige Liste von Empfehlungen. Es soll Ihnen stattdessen helfen, den Umfang der Audit-Logging-Aktivitäten zu verstehen und entsprechend zu planen.

In jedem Abschnitt werden wichtige Aktionen und weiterführende Links aufgeführt.

Informationen zu Cloud-Audit-Logs

Audit-Logs sind für die meisten Google Cloud Dienste verfügbar. Cloud-Audit-Logs erstellt für jedes Google Cloud Projekt, jedes Abrechnungskonto, jeden Ordner und jede Organisation die folgenden Arten von Audit-Logs:

Audit-Logtyp Konfigurierbar Kann in Rechnung gestellt werden
Audit-Logs zur Administratoraktivität Nein, werden immer geschrieben Nein
Audit-Logs zum Datenzugriff Ja Ja
Audit-Logs zu Richtlinienverstößen Ja, Sie können diese Logs vom Schreiben in Log-Buckets ausschließen Ja
Audit-Logs zu Systemereignissen Nein, werden immer geschrieben Nein

Audit-Logs zum Datenzugriff sind – außer für BigQuery – standardmäßig deaktiviert. Wenn Audit-Logs zum Datenzugriff für Google Cloud Dienste geschrieben werden sollen, müssen Sie sie explizit aktivieren. Weitere Informationen finden Sie auf dieser Seite unter Audit-Logs für den Datenzugriff konfigurieren.

Informationen zur allgemeinen Landschaft für das Audit-Logging mit Google Cloudfinden Sie unter Cloud-Audit-Logs – Übersicht.

Zugriff auf Logs steuern

Aufgrund der Sensibilität von Audit-Logging-Daten ist es besonders wichtig, die entsprechenden Zugriffssteuerungen für die Nutzer Ihrer Organisation zu konfigurieren.

Je nach Compliance- und Nutzungsanforderungen legen Sie diese Zugriffssteuerungen so fest:

IAM-Berechtigungen festlegen

IAM Berechtigungen und Rollen bestimmen, ob Nutzer auf Audit-Logdaten in der Logging API, dem Log-Explorer und der Google Cloud CLI zugreifen können. Mit IAM können Sie detaillierte Zugriffsberechtigungen auf bestimmte Google Cloud Buckets gewähren und unerwünschten Zugriff auf andere Ressourcen verhindern.

Die berechtigungsbasierten Rollen, die Sie Ihren Nutzern zuweisen, hängen von ihren Audit-bezogenen Funktionen in Ihrer Organisation ab. Sie können Ihrem CTO beispielsweise umfassende Administratorberechtigungen gewähren, während die Mitglieder Ihres Entwicklerteams möglicherweise Berechtigungen zum Anzeigen von Logs benötigen. Eine Anleitung dazu, welche Rollen Sie den Nutzern Ihrer Organisation zuweisen sollten, finden Sie unter Rollen für das Audit-Logging konfigurieren.

Wenn Sie IAM-Berechtigungen festlegen, wenden Sie das Sicherheitsprinzip der geringsten Berechtigung an und gewähren Sie Nutzern nur den erforderlichen Zugriff auf Ihre Ressourcen:

  • Entfernen Sie alle nicht erforderlichen Nutzer.
  • Gewähren Sie erforderlichen Nutzern die richtigen und minimalen Berechtigungen.

Eine Anleitung zum Festlegen von IAM-Berechtigungen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Logansichten konfigurieren

Alle von Logging empfangenen Logs, einschließlich Audit-Logs, werden in Speichercontainern namens Log-Buckets geschrieben. Logansichten ermöglichen Ihnen die Steuerung des Zugriffs auf die Logs in Ihren Log-Buckets.

Da Log-Buckets Logs von mehreren Google Cloud Projekten enthalten können, müssen Sie möglicherweise steuern, aus welchen Google Cloud Projekten unterschiedliche Nutzer Logs aufrufen können. Erstellen Sie benutzerdefinierte Logansichten, die eine genauere Zugriffssteuerung für diese Buckets ermöglichen.

Sie können Logansichten mit dem Log-Explorer oder mit Observability Analytics abfragen. Weitere Informationen finden Sie unter Logs abfragen und ansehen – Übersicht.

Eine Anleitung zum Erstellen und Verwalten von Logansichten finden Sie unter Logansichten für einen Log-Bucket konfigurieren.

Zugriffssteuerung auf Feldebene für Logs festlegen

Mit der Zugriffssteuerung auf Feldebene können Sie einzelne LogEntry-Felder für Nutzer eines Google Cloud Projekts ausblenden, sodass Sie eine detailliertere Möglichkeit zum Festlegen der Logdaten haben, auf die ein Nutzer zugreifen kann. Im Vergleich zu Logansichten, in denen der gesamte LogEntry ausgeblendet wird, sind bei der Zugriffssteuerung auf Feldebene einzelne Felder des LogEntry ausgeblendet. Sie können beispielsweise personenbezogene Daten externer Nutzer wie eine E-Mail-Adresse, die in der Nutzlast des Logeintrags enthalten ist, für die meisten Nutzer Ihrer Organisation ausblenden.

Wenn Sie Observability Analytics zum Analysieren Ihrer Audit-Logs verwenden möchten, konfigurieren Sie keine Zugriffssteuerung auf Feldebene für den Log-Bucket, in dem diese Logs gespeichert sind. Observability Analytics kann nicht für Log-Buckets verwendet werden, für die die Zugriffssteuerung auf Feldebene konfiguriert ist.

Eine Anleitung zum Konfigurieren der Zugriffssteuerung auf Feldebene finden Sie unter Zugriff auf Feldebene konfigurieren.

Audit-Logs für den Datenzugriff konfigurieren

Wenn Sie neue Google Cloud Dienste aktivieren, sollten Sie prüfen, ob Audit-Logs für den Datenzugriffaktiviert werden sollen.

Audit-Logs zum Datenzugriff helfen dem Google-Support beim Beheben von Problemen mit Ihrem Konto. Daher empfehlen wir, Audit-Logs zum Datenzugriff nach Möglichkeit zu aktivieren.

Wenn Sie alle Audit-Logs für alle Dienste aktivieren möchten, folgen Sie der Anleitung zum Aktualisieren der Richtlinie der Identitäts- und Zugriffsverwaltung (Identity and Access Management, IAM) mit der in der Audit-Richtlinieaufgeführten Konfiguration.

Nachdem Sie die Richtlinie für den Datenzugriff auf Organisationsebene definiert und Audit-Logs zum Daten zugriff aktiviert haben, prüfen Sie mit einem Test Google Cloud projekt die Konfiguration Ihrer Audit-Log-Sammlung, bevor Sie Entwickler- und Produktions Google Cloud projekte in der Organisation erstellen.

Eine Anleitung zum Aktivieren von Audit-Logs zum Datenzugriff finden Sie unter Audit-Logs zum Datenzugriff aktivieren.

Speicherung von Logs steuern

Sie können Aspekte der Buckets Ihrer Organisation konfigurieren und auch benutzerdefinierte Buckets erstellen, um Ihren Logspeicher zu zentralisieren oder zu unterteilen. Je nach Compliance- und Nutzungsanforderungen können Sie die Speicherung von Logs wie folgt anpassen:

  • Speicherort für Logs auswählen
  • Aufbewahrungsdauer für Daten definieren
  • Logs mit vom Kunden verwalteten Verschlüsselungsschlüsseln (CMEK) schützen

Speicherort für Logs auswählen

In Logging sind Buckets regionale Ressourcen. Die Infrastruktur, in der Ihre Logs gespeichert, indexiert und durchsucht werden, befindet sich an einem bestimmten geografischen Standort.

Ihre Organisation muss Logdaten möglicherweise in bestimmten Regionen speichern. Einer der Hauptfaktoren bei der Auswahl der Region, in der Logs gespeichert werden, ist die Erfüllung der Anforderungen Ihres Unternehmens in Bezug auf Latenz, Verfügbarkeit oder Compliance.

Wenn Sie automatisch eine bestimmte Speicherregion auf die neuen _Default- und _Required-Buckets anwenden möchten, die in Ihrer Organisation erstellt werden, können Sie einen Standardressourcenspeicherort konfigurieren.

Eine Anleitung zum Konfigurieren von Standardressourcenspeicherorten finden Sie unter Standardeinstellungen für Organisationen konfigurieren.

Aufbewahrungsdauer für Daten definieren

Cloud Logging speichert Logs gemäß den Aufbewahrungsregeln für den Log-Bucket-Typ, in dem die Logs gespeichert sind.

Konfigurieren Sie Cloud Logging so, dass Logs zwischen 1 und 3.650 Tage aufbewahrt werden, um Ihre Complianceanforderungen zu erfüllen. Benutzerdefinierte Aufbewahrungsregeln gelten für alle Logs in einem Bucket, unabhängig vom Logtyp oder davon, ob dieses Log von einem anderen Speicherort kopiert wurde.

Eine Anleitung zum Festlegen von Aufbewahrungsregeln für einen Log-Bucket finden Sie unter Benutzerdefinierte Aufbewahrung konfigurieren.

Audit-Logs mit vom Kunden verwalteten Verschlüsselungsschlüsseln schützen

Cloud Logging verschlüsselt inaktive Kundendaten standardmäßig. Ihre Organisation hat möglicherweise erweiterte Verschlüsselungsanforderungen, die bei der Standardverschlüsselung inaktiver Daten nicht vorgesehen sind. Anstatt die Schlüsselverschlüsselungsschlüssel, die Ihre Daten schützen, von Google verwalten zu lassen, können Sie vom Kunden verwaltete Verschlüsselungsschlüssel (CMEK) zur angepassten Steuerung und Verwaltung Ihrer Verschlüsselung konfigurieren.

Eine Anleitung zum Konfigurieren von CMEK finden Sie unter CMEK für die Logspeicherung konfigurieren.

Preise

Preisinformationen finden Sie auf der Seite Google Cloud Observability – Preise. Wenn Sie Logdaten an andere Google Cloud Dienste weiterleiten, finden Sie weitere Informationen in den folgenden Dokumenten:

Wenn Sie Ihre Audit-Logs konfigurieren und verwenden, empfehlen wir die folgenden Best Practices in Bezug auf die Preise:

  • Schätzen Sie Ihre Rechnungen, indem Sie Ihre Nutzung daten ansehen und Benachrichtigungsrichtlinien konfigurieren.

  • Beachten Sie, dass Audit-Logs zum Datenzugriff groß sein können und dass zusätzliche Speicherkosten anfallen können.

  • Verwalten Sie Ihre Kosten, indem Sie nicht nützliche Audit-Logs ausschließen. Sie können beispielsweise Audit-Logs zum Datenzugriff in Entwicklungsprojekten ausschließen.

Audit-Logs abfragen und ansehen

Wenn Sie Fehler beheben müssen, ist die Möglichkeit, Logs schnell aufrufen zu können, sehr hilfreich. In der Google Cloud Console können Sie mit dem Log-Explorer die Audit-Logeinträge für Ihre Organisation abrufen:

  1. Rufen Sie in der Google Cloud Console das Segment und die Seite Log-Explorer auf:

    Zum Log-Explorer

    Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis mit der Zwischenüberschrift Logging aus.

  2. Wählen Sie Ihre Organisation aus.

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

    • Wählen Sie unter Ressourcentyp die Google Cloud Ressource aus, deren 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 in der Organisation keine Audit-Logs dieses Typs verfügbar.

    • Geben Sie im Abfrageeditor die Audit-Logeinträge an, die Sie sehen möchten. Beispiele für häufig verwendete Abfragen finden Sie unter Beispielabfragen mit dem Log-Explorer.

  4. Klicken Sie auf Abfrage ausführen.

Weitere Informationen zu Abfragen mit dem Log-Explorer finden Sie unter Abfragen im Log-Explorer erstellen.

Audit-Logs überwachen

Mit Cloud Monitoring können Sie sich benachrichtigen lassen, wenn von Ihnen beschriebene Bedingungen auftreten. Damit Cloud Monitoring Daten aus Ihren Logs erhält, können Sie in Logging logbasierte Benachrichtigungsrichtlinien erstellen, die Sie informieren, sobald ein bestimmtes Ereignis in einem Log auftaucht.

Konfigurieren Sie Benachrichtigungsrichtlinien zur Unterscheidung zwischen Ereignissen, die eine sofortige Prüfung erfordern, und Ereignissen mit niedriger Priorität. Wenn Sie beispielsweise wissen möchten, wann in einem Audit-Log eine bestimmte Nachricht zum Datenzugriff aufgezeichnet wird, können Sie eine logbasierte Benachrichtigungsrichtlinie erstellen, die mit der Nachricht übereinstimmt und Sie benachrichtigt, wenn die Nachricht angezeigt wird.

Eine Anleitung zum Konfigurieren logbasierter Benachrichtigungsrichtlinien finden Sie unter Logbasierte Benachrichtigungsrichtlinien verwalten.

Logs an unterstützte Ziele weiterleiten

Ihre Organisation muss möglicherweise Anforderungen beim Erstellen und Speichern von Audit-Logs erfüllen. Mithilfe von Senken können Sie einige oder alle Logs an diese unterstützten Ziele weiterleiten:

  • Ein weiterer Cloud Logging-Bucket

Ermitteln Sie, ob Sie Senken auf Ordner- oder Organisationsebene benötigen, und leiten Sie Logs aus allen Google Cloud Projekten innerhalb der Organisation oder des Ordners mithilfe aggregierter Senken weiter. Beispiele für Routing-Anwendungsfälle:

  • Senke auf Organisationsebene: Wenn Ihre Organisation mehrere Audit-Logs mit einem SIEM verwaltet, sollten Sie alle Audit-Logs Ihrer Organisation weiterleiten. In diesem Fall ist eine Senke auf Organisationsebene sinnvoll.

  • Senke auf Ordnerebene: Manchmal müssen nur Audit-Logs bestimmter Abteilungen weitergeleitet werden. Wenn Sie beispielsweise einen Ordner „Finanzen“ und einen Ordner „IT“ haben, ist es eventuell sinnvoll, nur die Audit-Logs weiterzuleiten, die zum Ordner „Finanzen“ gehören, und umgekehrt.

    Weitere Informationen zu Ordnern und Organisationen finden Sie unter Ressourcenhierarchie.

Wenden Sie auf das Google Cloud Ziel dieselben Zugriffsrichtlinien an, die Sie auch für das Routing von Logs aus dem Log-Explorer verwenden.

Eine Anleitung zum Erstellen und Verwalten aggregierter Senken finden Sie unter Logs auf Organisationsebene sortieren und an unterstützte Ziele weiterleien.

Datenformat an Senkenzielen

Wenn Sie Audit-Logs an Ziele außerhalb von Cloud Logging weiterleiten, sollten Sie das Format der gesendeten Daten kennen.

Wenn Sie beispielsweise Logs an BigQuery weiterleiten, wendet Cloud Logging Regeln zum Kürzen der BigQuery-Schemafeldnamen für Audit-Logs und für bestimmte strukturierte Nutzlastfelder an.

Informationen zum Aufrufen von Logeinträgen, die Sie von Cloud Logging an unterstützte Ziele weitergeleitet haben, finden Sie unter Logs an Senkenzielen ansehen.

Logeinträge kopieren

Je nach Complianceanforderungen Ihrer Organisation müssen Sie möglicherweise Audit-Logeinträge für Prüfer außerhalb von Logging freigeben. Wenn Sie Logeinträge freigeben müssen, die bereits in Cloud Logging-Buckets gespeichert sind, können Sie sie manuell in Cloud Storage-Buckets kopieren.

Wenn Sie Logeinträge nach Cloud Storage kopieren, bleiben die Logeinträge auch in dem Log-Bucket erhalten, aus dem sie kopiert wurden.

Beachten Sie, dass Kopiervorgänge keine Senken ersetzen, die automatisch alle eingehenden Logeinträge an ein vorab ausgewähltes Speicherziel senden, einschließlich Cloud Storage.

Eine Anleitung zum Weiterleiten von Logs an Cloud Storage finden Sie unter siehe Logeinträge kopieren.