Logs Ihrer Organisation zusammenfassen und speichern

In diesem Dokument wird beschrieben, wie Sie die Logs, die von den in Ihrer Google Cloud-Organisation enthaltenen Ressourcen generiert wurden, mithilfe einer aggregierten Senke verwalten, die nicht abfängt.

Sie können eine aggregierte Senke so konfigurieren, dass sie abfängt oder nicht abfängt, je nachdem, ob Sie steuern möchten, welche Logs abgefragt oder über die Senken in untergeordneten Ressourcen weitergeleitet werden können. In dieser Anleitung erstellen Sie eine aggregierte Senke, die die Audit-Logs Ihrer Organisation an einen Log-Bucket weiterleitet. Sie können den Filter der Senke so konfigurieren, dass andere Arten von Logeinträgen weitergeleitet werden. Weitere Informationen zu aggregierten Senken finden Sie unter Logs auf Organisations- und Ordnerebene sortieren und an unterstützte Ziele weiterleiten.

In dieser Anleitung führen Sie die folgenden Schritte aus:

  1. Cloud Logging-Bucket zum Speichern der zusammengefassten Logs erstellen

  2. Eine nicht abfangende aggregierte Senke auf Organisationsebene erstellen, um die Logs an den neuen Log-Bucket weiterzuleiten.

  3. Lesezugriff auf den neuen Log-Bucket konfigurieren.

  4. Logs über die Seite „Log-Explorer“ abfragen und ansehen.

Hinweise

Prüfen Sie dabei Folgendes:

  • Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Inhaber (roles/owner) für ein Projekt zu gewähren, damit Sie die Berechtigungen erhalten, die Sie zum Gewähren der Hauptkontorollen benötigen.

  • Wenn Sie VPC Service Controls verwenden, müssen Sie dem Dienstperimeter eine Regel für eingehenden Traffic hinzufügen. Weitere Informationen zu den Einschränkungen von VPC Service Controls finden Sie unter Aggregierte Senken und Einschränkungen von VPC Service Controls.

Log-Bucket erstellen

Log-Buckets speichern von anderen Google Cloud-Projekten, Ordnern oder Organisationen weitergeleitete Logs. Weitere Informationen finden Sie unter Log-Buckets konfigurieren.

So erstellen Sie den Log-Bucket im Google Cloud-Projekt, in dem Sie Logs aggregieren möchten:

  1. Rufen Sie die Google Cloud Console auf:

    Zur Google Cloud Console

  2. Führen Sie in einem Cloud Shell-Terminal den Befehl gcloud logging buckets create aus.

    Ersetzen Sie Folgendes, bevor Sie den folgenden Befehl ausführen:

    • BUCKET_NAME: Der Name des Log-Buckets.
    • LOCATION: Der Speicherort des Log-Buckets.
    • PROJECT_ID: Die ID des Projekts, in dem der Log-Bucket erstellt werden soll.

    Führen Sie den Befehl gcloud logging buckets create aus:

     gcloud logging buckets create BUCKET_NAME \
       --location=LOCATION --project=PROJECT_ID
    
  3. Prüfen Sie, ob der Log-Bucket erstellt wurde:

    gcloud logging buckets list --project=PROJECT_ID
    
  4. Optional: Legen Sie die Aufbewahrungsdauer für die Logs im Bucket fest. In diesem Beispiel wird die Aufbewahrung von im Bucket gespeicherten Logs auf 365 Tage verlängert:

    gcloud logging buckets update BUCKET_NAME \
      --location=LOCATION --project=PROJECT_ID \
      --retention-days=365
    

Aggregierte Senke erstellen

Sie können Logs durch Erstellen einer Senke an einen Log-Bucket weiterleiten. Eine Senke enthält einen Einschlussfilter, einen optionalen Ausschlussfilter und ein Ziel. In dieser Anleitung ist das Ziel Ihr neuer Log-Bucket. Weitere Informationen zu Senken finden Sie unter Logs an unterstützte Ziele weiterleiten.

Senke auf Organisationsebene einrichten

Führen Sie die folgenden Schritte aus, um eine aggregierte Senke zu erstellen:

  1. Führen Sie den Befehl gcloud logging sinks create aus:

    Ersetzen Sie Folgendes, bevor Sie den folgenden Befehl ausführen:

    • SINK_NAME: Der Name der Logsenke.
    • PROJECT_ID: Die ID des Projekts, in dem der Log-Bucket gespeichert wird.
    • LOCATION: Der Speicherort des Log-Buckets.
    • BUCKET_NAME: Der Name des Log-Buckets.
    • ORGANIZATION_ID: ID der Organisation.

    Führen Sie den Befehl gcloud logging sinks create aus:

    gcloud logging sinks create SINK_NAME \
    logging.googleapis.com/projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_NAME  \
      --log-filter='logName:cloudaudit.googleapis.com' \
      --description="Audit logs from my organization" \
      --organization=ORGANIZATION_ID \
      --include-children
    

    Das Flag --include-children ist wichtig, damit Logs aus allen Google Cloud-Projekten innerhalb Ihrer Organisation berücksichtigt werden. Weitere Informationen finden Sie unter Logs auf Organisationsebene sortieren und an unterstützte Ziele weiterleiten.

  2. Prüfen Sie, ob die Senke erstellt wurde:

    gcloud logging sinks list --organization=ORGANIZATION_ID
    
  3. Rufen Sie den Namen des Dienstkontos ab:

    gcloud logging sinks describe SINK_NAME --organization=ORGANIZATION_ID
    

    Die Ausgabe sieht dann ungefähr so aus:

    writerIdentity: serviceAccount:o1234567890-ORGANIZATION_ID@gcp-sa-logging.iam.gserviceaccount.com
    
  4. Kopieren Sie den Wert aus dem Feld serviceAccount in die Zwischenablage.

Zugriff auf die Senke gewähren

Nachdem Sie die Senke erstellt haben, müssen Sie ihr die Berechtigung zum Schreiben in den Log-Bucket erteilen. Sie können Berechtigungen über die Google Cloud Console oder durch Bearbeiten der IAM-Richtlinie (Identity and Access Management) gewähren, wie unter Zielberechtigungen festlegen beschrieben.

So gewähren Sie der Senke die Berechtigung zum Schreiben von Logs:

  1. Öffnen Sie in der Google Cloud Console die Seite IAM:

    Zu IAM

    Wenn Sie diese Seite über die Suchleiste finden, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift IAM und Verwaltung ist.

  2. Wählen Sie das Google Cloud-Projekt aus, das Ihren Log-Bucket enthält.

  3. Klicken Sie auf Zugriff erlauben.

  4. Fügen Sie im Feld Neue Hauptkonten das Dienstkonto ohne das Präfix serviceAccount: hinzu.

  5. Wählen Sie im Menü Rolle auswählen die Option Log-Bucket-Autor aus.

  6. Klicken Sie auf Speichern.

Generieren Sie Logs, um die Senkenprüfung zu unterstützen

Prüfen Sie mit den folgenden Schritten, ob die aggregierte Senke ordnungsgemäß konfiguriert ist:

  1. Generieren Sie Audit-Logs, die an Ihren Log-Bucket weitergeleitet werden sollen.

    • Wenn Sie in Ihrer Organisation viele Google Cloud-Projekte haben, haben Sie möglicherweise genügend Audit-Log-Traffic, den Sie zu Validierungszwecken nicht erstellen müssen. Fahren Sie mit dem nächsten Schritt fort.

    • Alternativ können Sie zu einem anderen Projekt wechseln, eine Compute Engine-VM-Instanz erstellen und dann die von Ihnen erstellte Instanz löschen. Audit-Logs werden geschrieben, wenn eine VM erstellt, gestartet und gelöscht wird.

  2. Folgen Sie der Anleitung im Abschnitt Logs auf der Seite „Log-Explorer“ ansehen, um Ihre Audit-Logs aufzurufen. Wählen Sie unbedingt die Ansicht _AllLogs aus.

Lesezugriff auf einen Log-Bucket konfigurieren

Beim Erstellen eines Log-Buckets erzeugt Cloud Logging automatisch eine Logansicht namens _AllLogs. Diese Ansicht enthält jeden im Log-Bucket gespeicherten Logeintrag.

Wenn Sie ein Hauptkonto so einschränken möchten, dass es nur auf bestimmte Logeinträge zugreifen kann, erstellen Sie eine Logansicht und führen Sie dann einen der folgenden Schritte aus:

  • Weisen Sie ihm die Rolle roles/logging.viewAccessor zusammen mit einer IAM-Bedingung zu, die die Erteilung auf die Logansicht einschränkt.

  • Gewähren Sie einem Hauptkonto Zugriff auf die IAM-Richtlinie, die mit der Logansicht verknüpft ist. Wir empfehlen diesen Ansatz, wenn Sie eine große Anzahl von Logansichten erstellen.

Weitere Informationen zu diesen beiden Ansätzen finden Sie unter Zugriff auf eine Logansicht steuern.

In den folgenden Schritten weisen Sie einem Hauptkonto die Rolle roles/logging.viewAccessor zusammen mit einer IAM-Bedingung zu, die die Erteilung auf die Ansicht _AllLogs einschränkt:

  1. Öffnen Sie in der Google Cloud Console die Seite IAM:

    Zu IAM

    Wenn Sie diese Seite über die Suchleiste finden, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift IAM und Verwaltung ist.

    Achten Sie darauf, dass Sie das Google Cloud-Projekt ausgewählt haben, das Sie zum Zusammenfassen der Logs verwenden.

  2. Klicken Sie auf Hinzufügen.

  3. Fügen Sie im Feld Neues Hauptkonto ein Hauptkonto hinzu.

  4. Wählen Sie im Menü Rolle auswählen die Option Zugriffsfunktion für Logansichten aus.

  5. Fügen Sie der Bindung eine IAM-Bedingung hinzu:

    1. Klicken Sie auf Bedingung hinzufügen und geben Sie einen Titel und eine Beschreibung ein.
    2. Scrollen Sie im Menü Bedingungstyp zu Ressource und wählen Sie Name aus.
    3. Wählen Sie im Menü Operator die Option Endet mit aus.
    4. Geben Sie im Feld Wert den vollständigen Namen der Logansicht ein:

      locations/LOCATION/buckets/BUCKET_NAME/views/_AllLogs
      
    5. Klicken Sie auf Speichern, um die Bedingung zu speichern.

  6. Klicken Sie auf Speichern, um die Bindung zu speichern.

Logs auf der Seite „Log-Explorer“ ansehen

So rufen Sie die Logs in Ihrem Log-Bucket auf:

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

    Zum Log-Explorer

    Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Monitoring ist.

  2. Wählen Sie Bereich eingrenzen aus.

  3. Wählen Sie unter Bereich eingrenzen die Option Bereich nach Speicher aus.

  4. Wählen Sie die Logansicht oder die Logansichten aus, deren Logeinträge Sie sehen möchten. Wenn Sie beispielsweise alle Logs ansehen möchten, wählen Sie die Ansicht mit dem Namen _AllLogs aus.

  5. Klicken Sie auf Anwenden.

    Der Log-Explorer wird aktualisiert und zeigt Logs aus dem Log-Bucket an.

    Informationen zur Verwendung des Log-Explorers finden Sie unter Log-Explorer verwenden.