Logansichten für einen Log-Bucket konfigurieren

In diesem Dokument wird beschrieben, wie Sie Protokollansichten in Ihren Cloud Logging-Buckets erstellen und verwalten. Mit Logansichten können Sie erweitert und detailliert steuern, wer Zugriff auf die Logs in Ihren Log-Buckets hat.

Sie können Ihre Log-Ansichten mit der Google Cloud Console, der gcloud CLI, Terraform oder der Cloud Logging API konfigurieren und verwalten.

Allgemeine Informationen zum Speichermodell für Logging finden Sie unter Routing und Speicher.

Logansichten

Mit Logansichten können Sie einem Nutzer Zugriff auf nur einen Teil der in einem Log-Bucket gespeicherten Logs gewähren. Stellen Sie sich beispielsweise ein Szenario vor, in dem Sie die Logs Ihrer Organisation in einem zentralen Projekt speichern. Sie können für jedes Projekt, das Logs zum Log-Bucket beiträgt, eine Logansicht erstellen. Anschließend können Sie jedem Nutzer Zugriff auf eine oder mehrere Logansichten gewähren und so einschränken, welche Protokolle er sehen kann.

Sie können pro Log-Bucket maximal 30 Logansichten erstellen.

Zugriff auf eine Protokollansicht steuern

In Cloud Logging wird mithilfe von IAM-Richtlinien gesteuert, wer Zugriff auf Protokollansichten hat. IAM-Richtlinien können auf Ressourcen-, Projekt-, Ordner- und Organisationsebene vorhanden sein. Für Cloud Logging können Sie für jede Log-Ansicht eine IAM-Richtlinie erstellen. Um zu ermitteln, ob ein Hauptkonto für eine Aktion autorisiert ist, wertet IAM alle anwendbaren Richtlinien aus. Die erste Bewertung erfolgt auf Ressourcenebene.

Hauptkonten mit der Rolle roles/logging.viewAccessor in einem Google Cloud-Projekt können auf Ansichten und Protokolle in jedem Protokoll-Bucket im Projekt zugreifen.

Wenn Sie einem Hauptkonto nur Zugriff auf eine bestimmte Protokollansicht gewähren möchten, gehen Sie so vor:

  • Erstellen Sie eine IAM-Richtlinie für die Protokollansicht und fügen Sie dieser Richtlinie dann eine IAM-Bindung hinzu, die dem Hauptkonto Zugriff auf die Protokollansicht gewährt.

    Wenn Sie eine große Anzahl von Protokollansichten erstellen, empfehlen wir diesen Ansatz.

  • Weisen Sie dem Hauptkonto die IAM-Rolle roles/logging.viewAccessor für das Projekt zu, das die Protokollansicht enthält, fügen Sie aber eine IAM-Bedingung hinzu, um die Berechtigung auf die spezifische Protokollansicht zu beschränken. Wenn Sie die Bedingung weglassen, gewähren Sie dem Hauptkonto Zugriff auf alle Logansichten. Die Richtliniendatei für ein Google Cloud-Projekt darf maximal 20 Rollenbindungen enthalten, die dieselbe Rolle und dasselbe Hauptkonto, aber unterschiedliche Bedingungsausdrücke haben.

Weitere Informationen finden Sie in den folgenden Abschnitten dieses Dokuments:

Automatisch erstellte Protokollansichten

Cloud Logging erstellt automatisch eine _AllLogs-Ansicht für jeden Log-Bucket und eine _Default-Ansicht für den _Default-Log-Bucket:

  • _AllLogs-Ansicht: Sie können sich alle Logs im Log-Bucket ansehen.
  • Ansicht _Default: Sie können alle Logs im Log-Bucket aufrufen, die keine Audit-Logs zum Datenzugriff sind.

Ansichten, die automatisch von Cloud Logging erstellt werden, können nicht geändert werden. Sie können jedoch die Ansicht _AllLogs löschen.

Filter für die Loganzeige

Jede Logansicht enthält einen Filter, der festlegt, welche Logeinträge in der Ansicht zu sehen sind. Filter können logische AND- und NOT-Operatoren enthalten, aber keine logischen OR-Operatoren. Für Filter können die folgenden Werte verglichen werden:

  • Eine Datenquelle, für die die Funktion source verwendet wird Die source-Funktion gibt Logeinträge einer bestimmten Ressource in der Hierarchie der Organisationen, Ordner und Google Cloud-Projekte zurück.

  • Eine Log-ID, wofür die Funktion log_id verwendet wird Die Funktion log_id gibt Logeinträge zurück, die mit dem angegebenen Argument LOG_ID aus dem Feld logName übereinstimmen.

  • Einen gültigen Ressourcentyp, wofür der Vergleich resource.type= FIELD_NAME verwendet wird

Mit dem folgenden Filter werden beispielsweise stdout-Protokolleinträge der Compute Engine aus einem Google Cloud-Projekt namens myproject erfasst:

source("projects/myproject") AND resource.type = "gce_instance" AND log_id("stdout")

Weitere Informationen zur Filtersyntax finden Sie unter Vergleiche.

Unterschiede zwischen Log- und Analyseaufrufen

Protokollansichten und Analyseansichten unterscheiden sich.

Mit einer Logansicht für einen Log-Bucket können Sie festlegen, welche Logeinträge im Log-Bucket angezeigt werden. In Log Analytics wird das Schema der abgefragten Daten durch die LogEntry-Datenstruktur bestimmt.

Eine Analyseansicht enthält eine SQL-Abfrage für eine oder mehrere Protokollansichten. Mit Log Analytics können Sie Abfragen für eine Analyseansicht schreiben. Da der Ersteller einer Analyseansicht das Schema festlegt, können Sie mit Analyseansichten Protokolldaten aus dem LogEntry-Format in ein für Sie geeigneteres Format umwandeln.

Hinweise

Führen Sie vor dem Erstellen oder Aktualisieren einer Protokollansicht die folgenden Schritte aus:

  1. Erstellen Sie im entsprechenden Google Cloud-Projekt einen Logging-Bucket, für den Sie eine benutzerdefinierte Protokollansicht konfigurieren möchten.

  2. Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für Ihr Projekt zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Erstellen und Verwalten von Protokollansichten und zum Gewähren von Zugriff auf Protokollansichten benötigen:

    Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

    Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.

  3. Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

    Terraform

    Wenn Sie die Terraform-Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung verwenden möchten, installieren und initialisieren Sie die gcloud CLI und richten dann die Standardanmeldedaten für Anwendungen mit Ihren Nutzeranmeldedaten ein.

    1. Install the Google Cloud CLI.
    2. If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

    3. To initialize the gcloud CLI, run the following command:

      gcloud init
    4. If you're using a local shell, then create local authentication credentials for your user account:

      gcloud auth application-default login

      You don't need to do this if you're using Cloud Shell.

      If an authentication error is returned, confirm that you have configured the gcloud CLI to use Workforce Identity Federation.

    Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten in der Dokumentation zur Google Cloud-Authentifizierung.

  4. Legen Sie fest, welche Logs in der Ansicht enthalten sein sollen. Anhand dieser Informationen können Sie den Filter der Protokollansicht festlegen.

  5. Legen Sie fest, wer Zugriff auf die Log-Ansicht haben soll, und ob Sie der IAM-Richtlinie der Log-Ansicht oder dem Google Cloud-Projekt Bindungen hinzufügen möchten. Weitere Informationen finden Sie unter Zugriff auf eine Logansicht steuern.

Logansicht erstellen

Sie können pro Log-Bucket maximal 30 Logansichten erstellen.

Console

So erstellen Sie eine Log-Ansicht:

  1. Rufen Sie in der Google Cloud Console die Seite Logspeicher auf.

    Zum Log-Speicher

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

  2. Wählen Sie das Projekt, den Ordner oder die Organisation aus, in dem bzw. der der Log-Bucket gespeichert ist.
  3. Wählen Sie im Bereich Log-Buckets den Namen des Log-Buckets aus, für das Sie eine Log-Ansicht erstellen möchten.
  4. Klicken Sie auf der Detailseite für den Log-Bucket im Bereich Logansichten auf Logansicht erstellen.
  5. Führen Sie auf der Seite Logansicht definieren die folgenden Schritte aus:

    1. Geben Sie einen Namen für die Protokollansicht ein. Sie können diesen Namen nach dem Erstellen der Protokollansicht nicht mehr ändern. Der Name darf maximal 100 Zeichen lang sein und nur Buchstaben, Ziffern, Unterstriche und Bindestriche enthalten.
    2. Geben Sie eine Beschreibung für die Protokollansicht ein.
    3. Geben Sie im Feld Filter erstellen einen Ausdruck ein, mit dem festgelegt wird, welche Logeinträge im Log-Bucket in der Loganzeige enthalten sind. Informationen zur Struktur dieses Felds finden Sie im Abschnitt Filter für die Loganzeige dieses Dokuments.
  6. Optional: So fügen Sie der Protokollansichtsressource eine Rollenbindung hinzu:

    1. Klicken Sie auf Weiter und gehen Sie zur Seite Berechtigungen festlegen.
    2. Klicken Sie auf Zugriff erlauben.
    3. Maximieren Sie im Bereich Hauptkonten hinzufügen das Menü Neue Hauptkonten und wählen Sie ein Hauptkonto aus.
    4. Wählen Sie im Bereich Rollen zuweisen die Rolle Logs-Ansicht-Zugriffsfunktion aus.
    5. Klicken Sie auf Speichern.
  7. Klicken Sie auf Ansicht speichern.

  8. Wenn Sie bei der Erstellung der Log-Ansicht keinen Berechtigten Zugriff darauf gewährt haben, führen Sie die Schritte im folgenden Abschnitt aus.

gcloud

So erstellen Sie eine Log-Ansicht:

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

    Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:

    • LOG_VIEW_ID: Die Kennung der Log-Ansicht, die auf 100 Zeichen beschränkt ist und nur Buchstaben, Ziffern, Unterstriche und Bindestriche enthalten darf.
    • BUCKET_NAME: Der Name des Log-Buckets.
    • LOCATION: Der Speicherort des Log-Buckets.
    • FILTER: Ein Filter, der die Loganzeige definiert. Wenn die Liste leer ist, enthält die Log-Ansicht alle Logs. Wenn Sie beispielsweise nach Logs für Compute Engine-VM-Instanzen filtern möchten, geben Sie "resource.type=gce_instance" ein.
    • DESCRIPTION: Eine Beschreibung der Log-Ansicht. Sie können beispielsweise Folgendes für die Beschreibung "Compute logs" eingeben.
    • PROJECT_ID: Die Kennung des Projekts. Wenn Sie eine Protokollansicht in einem Ordner oder einer Organisation erstellen möchten, ersetzen Sie --project durch --folder oder --organization.

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

    Linux, macOS oder Cloud Shell

    gcloud logging views create LOG_VIEW_ID --bucket=BUCKET_NAME \
     --location=LOCATION --log-filter=FILTER --description=DESCRIPTION \
     --project=PROJECT_ID

    Windows (PowerShell)

    gcloud logging views create LOG_VIEW_ID --bucket=BUCKET_NAME `
     --location=LOCATION --log-filter=FILTER --description=DESCRIPTION `
     --project=PROJECT_ID

    Windows (cmd.exe)

    gcloud logging views create LOG_VIEW_ID --bucket=BUCKET_NAME ^
     --location=LOCATION --log-filter=FILTER --description=DESCRIPTION ^
     --project=PROJECT_ID

    Dieser Befehl gibt keine Antwort zurück. Sie können die Änderungen mit dem Befehl gcloud logging views list bestätigen.

  2. Gewähren Sie Hauptkonten Zugriff auf Ihre Logansicht. Im folgenden Abschnitt finden Sie Informationen zu diesen Schritten.

Terraform

Informationen zum Anwenden oder Entfernen einer Terraform-Konfiguration finden Sie unter Grundlegende Terraform-Befehle. Weitere Informationen finden Sie in der Anbieterreferenzdokumentation zu Terraform.

So erstellen Sie mit Terraform eine Protokollansicht in einem Projekt, Ordner oder einer Organisation:

  1. Verwenden Sie die Terraform-Ressource google_logging_log_view.

    Legen Sie im Befehl die folgenden Felder fest:

    • name: Geben Sie den voll qualifizierten Namen der Protokollansicht an. Für Projekte sieht das Format dieses Felds beispielsweise so aus:

      "projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_NAME/view/LOG_VIEW_ID"
      

      Im vorherigen Ausdruck ist LOCATION der Speicherort des Protokoll-Buckets.

    • bucket: Muss den voll qualifizierten Namen des Log-Buckets enthalten. Dieses Feld kann beispielsweise folgendermaßen aussehen:

      "projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_NAME"
      
    • filter: Der Filter, der angibt, welche Logeinträge in der Logansicht enthalten sind.

    • description: Eine kurze Beschreibung.

  2. Gewähren Sie Hauptkonten Zugriff auf Ihre Logansicht. Im folgenden Abschnitt finden Sie Informationen zu diesen Schritten.

Zugriff auf eine Log-Ansicht gewähren

Es gibt zwei Möglichkeiten, einen Nutzer auf eine bestimmte Protokollansicht in einem benutzerdefinierten Protokoll-Bucket einzuschränken:

Wenn Sie eine große Anzahl von Protokollansichten erstellen, empfehlen wir, den Zugriff über die IAM-Richtliniendatei der Protokollansicht zu steuern.

Logaufruf: Rollenbindungen hinzufügen

In diesem Abschnitt wird beschrieben, wie Sie mit der IAM-Richtliniendatei für eine Logansicht festlegen, wer Zugriff auf die Logeinträge in dieser Logansicht hat. Bei diesem Ansatz fügen Sie der Richtliniendatei der Protokollansicht eine Bindung hinzu, die dem angegebenen Hauptkonto Zugriff auf die Protokollansicht gewährt.

In diesem Abschnitt wird auch beschrieben, wie Sie die in der IAM-Richtliniendatei enthaltene Rollenbindung für eine Protokollansicht auflisten.

Console

So aktualisieren Sie die IAM-Richtliniendatei einer Protokollansicht:

  1. Rufen Sie in der Google Cloud Console die Seite Logspeicher auf.

    Zum Log-Speicher

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

  2. Wählen Sie das Projekt, den Ordner oder die Organisation aus, in dem bzw. der der Log-Bucket gespeichert ist.
  3. Wählen Sie im Bereich Log-Buckets den Namen des Log-Buckets aus, in dem die Log-Ansicht gehostet wird.
  4. Rufen Sie auf der Detailseite für den Log-Bucket den Bereich Logansichten auf.
  5. Klicken Sie für die Protokollansicht, deren IAM-Richtliniendatei Sie ändern möchten, auf Aktionen und wählen Sie Berechtigungen anpassen aus.

    Das Flyout „Berechtigungen“ wird geöffnet und zeigt die Berechtigungen an, die mit der Log-Ansicht verknüpft sind.

  6. Klicken Sie im Drop-down-Menü für Berechtigungen auf Hauptkonto hinzufügen.

  7. Maximieren Sie im Bereich Hauptkonten hinzufügen das Menü Neue Hauptkonten und wählen Sie ein Hauptkonto aus.

  8. Wählen Sie im Bereich Rollen zuweisen die Rolle Logs-Ansicht-Zugriffsfunktion aus.

  9. Klicken Sie auf Speichern.

    Das Flyout für Berechtigungen wird mit den neuen Berechtigungen aktualisiert.

    • Im Abschnitt Zugriffssteuerung für Logs (N) sind die Hauptkonten aufgeführt, denen die Rolle „Zugriffssteuerung für Logs“ auf Projektebene gewährt wurde. Diese Hauptkonten haben Zugriff auf alle Protokollansichten im Projekt.

    • In Abschnitten wie Bedingung für „Log View Accessor“: bedingungenspezifischer beschreibender Text (N) sind die Hauptkonten aufgeführt, denen die Rolle „Log View Accessor“ bedingt auf Projektebene gewährt wurde. Diese Hauptkonten haben nur Zugriff auf die Protokollansicht, die durch die Bedingung festgelegt wurde.

    • Im Bereich Zugriffssteuerung für Logs – Bedingung:abcde (N) sind die Hauptkonten aufgeführt, die Berechtigungen auf Ebene der Logansicht haben.

    Der folgende Screenshot zeigt ein Drop-down-Menü für Berechtigungen, in dem zwei Hauptkonten Rollenzuweisungen auf Projektebene haben, die durch das Projektsymbol  gekennzeichnet sind. Ein Hauptkonto hat eine Berechtigung auf Protokollansichtsebene:

    Abbildung des Flyouts für Berechtigungen

  10. Klicken Sie auf X, um das Flyout zu schließen.

gcloud

So aktualisieren Sie die IAM-Richtliniendatei einer Protokollansicht:

  1. Führen Sie den Befehl gcloud logging views add-iam-policy-binding aus:

    Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:

    • LOG_VIEW_ID: Die Kennung der Log-Ansicht, die auf 100 Zeichen beschränkt ist und nur Buchstaben, Ziffern, Unterstriche und Bindestriche enthalten darf.
    • PRINCIPAL: Eine Kennung für das Hauptkonto, dem Sie die Rolle zuweisen möchten. Hauptkonto-Kennzeichnungen haben normalerweise das folgende Format: PRINCIPAL-TYPE:ID. Beispiel: user:my-user@example.com Eine vollständige Liste der Formate für PRINCIPAL finden Sie unter Hauptkonto-IDs.
    • BUCKET_NAME: Der Name des Log-Buckets.
    • LOCATION: Der Speicherort des Log-Buckets.
    • PROJECT_ID: Die Kennung des Projekts. Ersetzen Sie bei Bedarf --project durch --folder oder --organization.

    Führen Sie den Befehl gcloud logging views add-iam-policy-binding aus:

    Linux, macOS oder Cloud Shell

    gcloud logging views add-iam-policy-binding LOG_VIEW_ID \
      --member=PRINCIPAL --role='roles/logging.viewAccessor' \
      --bucket=BUCKET_NAME --location=LOCATION \
      --project=PROJECT_ID

    Windows (PowerShell)

    gcloud logging views add-iam-policy-binding LOG_VIEW_ID `
      --member=PRINCIPAL --role='roles/logging.viewAccessor' `
      --bucket=BUCKET_NAME --location=LOCATION `
      --project=PROJECT_ID

    Windows (cmd.exe)

    gcloud logging views add-iam-policy-binding LOG_VIEW_ID ^
      --member=PRINCIPAL --role='roles/logging.viewAccessor' ^
      --bucket=BUCKET_NAME --location=LOCATION ^
      --project=PROJECT_ID

    Im Folgenden wird die Antwort veranschaulicht, wenn eine einzelne Bindung hinzugefügt wird:

    Updated IAM policy for logging view [projects/PROJECT_ID/locations/global/buckets/BUCKET_NAME/views/LOG_VIEW_ID].
    bindings:
    - members:
      - PRINCIPAL
      role: roles/logging.viewAccessor
    etag: BwYXfSd9-Gw=
    version: 1
    

  2. Führen Sie den Befehl gcloud logging views get-iam-policy aus, um die Aktualisierung zu überprüfen:

    Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:

    • LOG_VIEW_ID: Die Kennung der Log-Ansicht, die auf 100 Zeichen beschränkt ist und nur Buchstaben, Ziffern, Unterstriche und Bindestriche enthalten darf.
    • BUCKET_NAME: Der Name des Log-Buckets.
    • LOCATION: Der Speicherort des Log-Buckets.
    • PROJECT_ID: Die Kennung des Projekts. Ersetzen Sie bei Bedarf --project durch --folder oder --organization.

    Führen Sie den Befehl gcloud logging views get-iam-policy aus:

    Linux, macOS oder Cloud Shell

    gcloud logging views get-iam-policy LOG_VIEW_ID \
     --bucket=BUCKET_NAME --location=LOCATION \
     --project=PROJECT_ID

    Windows (PowerShell)

    gcloud logging views get-iam-policy LOG_VIEW_ID `
     --bucket=BUCKET_NAME --location=LOCATION `
     --project=PROJECT_ID

    Windows (cmd.exe)

    gcloud logging views get-iam-policy LOG_VIEW_ID ^
     --bucket=BUCKET_NAME --location=LOCATION ^
     --project=PROJECT_ID

    Wenn eine Protokollansicht keine Bindungen enthält, enthält die Antwort nur ein etag-Feld. Im Folgenden wird die Antwort dargestellt, wenn eine Protokollansicht eine einzelne Bindung enthält:

    bindings:
    - members:
      - PRINCIPAL
      role: roles/logging.viewAccessor
    etag: BwYXfSd9-Gw=
    version: 1
    

Terraform

Informationen zum Anwenden oder Entfernen einer Terraform-Konfiguration finden Sie unter Grundlegende Terraform-Befehle. Weitere Informationen finden Sie in der Anbieterreferenzdokumentation zu Terraform.

Für die Bereitstellung von IAM-Verknüpfungen für eine Loganzeige mit Terraform sind mehrere verschiedene Ressourcen verfügbar:

  • google_logging_log_view_iam_policy
  • google_logging_log_view_iam_binding
  • google_logging_log_view_iam_member

Weitere Informationen finden Sie unter IAM-Richtlinie für Cloud Logging LogView.

Wenn Sie IAM-Verknüpfungen für Protokollansichten mit Terraform auflisten möchten, verwenden Sie die Datenquelle google_logging_log_view_iam_policy.

Google Cloud-Projekt: Rollenbindungen hinzufügen

In diesem Abschnitt wird beschrieben, wie Sie einem Google Cloud-Projekt eine Rollenbindung hinzufügen und die mit einem Projekt verknüpften Bindungen auflisten. Wenn Sie diesen Ansatz verwenden, um ein Hauptkonto auf den Zugriff auf die in einer bestimmten Protokollansicht gespeicherten Protokolleinträge zu beschränken, müssen Sie der Berechtigung eine IAM-Bedingung hinzufügen.

Console

So fügen Sie der IAM-Richtliniendatei eines Google Cloud-Projekts eine Rollenbindung hinzu: Gehen Sie dazu in dem Projekt, in dem Sie den Log-Bucket erstellt haben, so vor:

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

    Rufen Sie IAM auf.

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

    Auf der Seite IAM sind alle Hauptkonten, ihre IAM-Rollen und alle mit diesen Rollen verknüpften Bedingungen aufgeführt, die auf Projektebene angewendet werden. Auf dieser Seite werden keine Rollenbindungen angezeigt, die mit der Richtliniendatei einer Protokollansicht verknüpft sind.

  2. Klicken Sie auf Zugriff erlauben.

  3. Fügen Sie das E-Mail-Konto des Nutzers im Feld Neue Hauptkonten hinzu.

  4. Wählen Sie im Drop-down-Menü Rolle auswählen die Option Zugriffsfunktion für Logs-Ansicht aus.

    Diese Rolle gibt Nutzern Lesezugriff auf alle Ansichten. Um den Nutzerzugriff auf einen bestimmten Bucket zu beschränken, fügen Sie eine Bedingung auf Basis des Ressourcennamens hinzu.

    1. Klicken Sie auf IAM-Bedingung hinzufügen.

    2. Geben Sie für die Bedingung einen Titel und eineBeschreibung ein.

    3. Wählen Sie im Drop-down-Menü Bedingungstyp die Option Ressource > Name aus.

    4. Wählen Sie im Drop-down-Menü Operator die Option ist aus.

    5. Geben Sie im Feld Wert die ID der Logansicht ein, einschließlich des vollständigen Pfads zur Ansicht.

      Beispiel:

      projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_NAME/views/LOG_VIEW_ID
    6. Klicken Sie auf Speichern, um die Bedingung hinzuzufügen.

  5. Klicken Sie auf Speichern, um die Berechtigungen festzulegen.

gcloud

So fügen Sie der IAM-Richtliniendatei eines Google Cloud-Projekts eine Rollenbindung hinzu:

  1. Erstellen Sie eine JSON- oder YAML-Datei mit Ihrer Bedingung.

    Sie können beispielsweise eine Datei mit dem Namen condition.yaml mit folgendem Inhalt erstellen:

    expression: "resource.name == \"projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_NAME/views/LOG_VIEW_ID\""
    title: "My title"
    description: "My description"
    
  2. Optional: Führen Sie den folgenden Befehl aus, um zu prüfen, ob die JSON- oder YAML-Datei richtig formatiert ist:

    gcloud alpha iam policies lint-condition --condition-from-file=condition.yaml
    
  3. Aktualisieren Sie die IAM-Richtlinie im Google Cloud-Projekt, indem Sie die Methode gcloud projects add-iam-policy-binding aufrufen.

    Bevor Sie den folgenden Befehl verwenden, nehmen Sie die folgenden Ersetzungen vor:

    • PROJECT_ID: Die Kennung des Projekts.
    • PRINCIPAL: Eine Kennung für das Hauptkonto, dem Sie die Rolle zuweisen möchten. Hauptkonto-Kennzeichnungen haben normalerweise das folgende Format: PRINCIPAL-TYPE:ID. Beispiel: user:my-user@example.com Eine vollständige Liste der Formate für PRINCIPAL finden Sie unter Hauptkonto-IDs.

    Führen Sie den Befehl gcloud projects add-iam-policy-binding aus:

    gcloud projects add-iam-policy-binding PROJECT_ID --member=PRINCIPAL --role='roles/logging.viewAccessor' --condition-from-file=condition.yaml
    

    Die Antwort auf den vorherigen Befehl enthält alle Rollenbindungen.

    - condition:
        description: My description
        expression: resource.name == "projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_NAME/views/LOG_VIEW_ID"
        title: My title
      members:
      - PRINCIPAL
      role: roles/logging.viewAccessor
    
  4. Optional: Mit dem Befehl gcloud projects get-iam-policy können Sie die Rollenbindungen für ein Google Cloud-Projekt auflisten:

    gcloud projects get-iam-policy PROJECT_ID
    

    Bevor Sie den folgenden Befehl verwenden, nehmen Sie die folgenden Ersetzungen vor:

    • PROJECT_ID: Die Kennung des Projekts.

    Die Antwort auf den vorherigen Befehl enthält alle Rollenbindungen.

    - condition:
        description: My description
        expression: resource.name == "projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_NAME/views/LOG_VIEW_ID"
        title: My title
      members:
      - PRINCIPAL
      role: roles/logging.viewAccessor
    

Terraform

Informationen zum Anwenden oder Entfernen einer Terraform-Konfiguration finden Sie unter Grundlegende Terraform-Befehle. Weitere Informationen finden Sie in der Anbieterreferenzdokumentation zu Terraform.

Für die Bereitstellung von IAM-Verknüpfungen für Projekte mit Terraform sind mehrere verschiedene Ressourcen verfügbar:

  • google_project_iam_policy
  • google_project_iam_binding
  • google_project_iam_member

Weitere Informationen finden Sie unter IAM-Richtlinie für Projekte.

Wenn Sie IAM-Verknüpfungen für Projekte mit Terraform auflisten möchten, verwenden Sie die Datenquelle google_project_iam_policy.

Alle Rollenbindungen für eine Protokollansicht auflisten

Auf der Seite IAM in der Google Cloud Console sind Rollenbindungen auf Projektebene aufgeführt. Auf dieser Seite werden keine Rollenbindungen aufgeführt, die an Ressourcen wie Protokollansichten angehängt sind. In diesem Abschnitt wird beschrieben, wie Sie alle Rollenbindungen für eine bestimmte Protokollansicht aufrufen.

So rufen Sie die IAM-Bindungen auf, die mit einer Protokollansicht verknüpft sind:

  1. Rufen Sie in der Google Cloud Console die Seite Logspeicher auf.

    Zum Log-Speicher

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

  2. Wählen Sie das Projekt, den Ordner oder die Organisation aus, in dem bzw. der der Log-Bucket gespeichert ist.
  3. Wählen Sie im Bereich Log-Buckets den Namen des Log-Buckets aus, in dem die Log-Ansicht gehostet wird.
  4. Rufen Sie auf der Detailseite für den Log-Bucket den Bereich Logansichten auf.
  5. Klicken Sie für die Protokollansicht, deren Rollenbindungen Sie aufrufen möchten, auf Aktionen und wählen Sie Berechtigungen anpassen aus.

    Im Flyout „Berechtigungen“ werden alle Berechtigungen angezeigt, die mit der Logansicht verknüpft sind:

    • Im Abschnitt Zugriffssteuerung für Logs (N) sind die Hauptkonten aufgeführt, denen die Rolle „Zugriffssteuerung für Logs“ auf Projektebene gewährt wurde. Diese Hauptkonten haben Zugriff auf alle Protokollansichten im Projekt.

    • In Abschnitten wie Bedingung für „Log View Accessor“: bedingungenspezifischer beschreibender Text (N) sind die Hauptkonten aufgeführt, denen die Rolle „Log View Accessor“ bedingt auf Projektebene gewährt wurde. Diese Hauptkonten haben nur Zugriff auf die Protokollansicht, die durch die Bedingung festgelegt wurde.

    • Im Bereich Zugriffssteuerung für Logs – Bedingung:abcde (N) sind die Hauptkonten aufgeführt, die Berechtigungen auf Ebene der Logansicht haben.

    Der folgende Screenshot zeigt ein Drop-down-Menü für Berechtigungen, in dem zwei Hauptkonten Rollenzuweisungen auf Projektebene haben, die durch das Projektsymbol  gekennzeichnet sind. Ein Hauptkonto hat eine Berechtigung auf Protokollansichtsebene:

    Abbildung des Flyouts für Berechtigungen

  6. Klicken Sie auf X, um das Flyout zu schließen.

Logansichten in einem Log-Bucket auflisten

Console

  1. Rufen Sie in der Google Cloud Console die Seite Logspeicher auf.

    Zum Log-Speicher

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

  2. Wählen Sie das Projekt, den Ordner oder die Organisation aus, in dem bzw. der der Log-Bucket gespeichert ist.
  3. Wählen Sie im Bereich Log-Buckets den Namen des Log-Buckets aus, in dem die Log-Ansicht gehostet wird.

    Die Detailseite für den Log-Bucket wird geöffnet. Im Bereich Logansichten sind die Logansichten des Log-Buckets aufgeführt.

gcloud

Verwenden Sie den Befehl gcloud logging views list, um die für einen Protokoll-Bucket erstellten Protokollansichten aufzulisten.

Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:

  • BUCKET_NAME: Der Name des Log-Buckets.
  • LOCATION: Der Speicherort des Log-Buckets.
  • PROJECT_ID: Die Kennung des Projekts. Ersetzen Sie bei Bedarf --project durch --folder oder --organization.

Führen Sie den Befehl gcloud logging views list aus:

Linux, macOS oder Cloud Shell

gcloud logging views list \
 --bucket=BUCKET_NAME --location=LOCATION \
 --project=PROJECT_ID

Windows (PowerShell)

gcloud logging views list `
 --bucket=BUCKET_NAME --location=LOCATION `
 --project=PROJECT_ID

Windows (cmd.exe)

gcloud logging views list ^
 --bucket=BUCKET_NAME --location=LOCATION ^
 --project=PROJECT_ID

Die Antwortdaten sind eine Liste von Logansichten. Für jede Protokollansicht werden der Filter sowie das Erstellungs- und das Datum der letzten Aktualisierung angezeigt. Wenn die Erstellungs- und Aktualisierungsdaten leer sind, wurde die Protokollansicht beim Erstellen des Google Cloud-Projekts erstellt. Die folgende Beispielausgabe zeigt, dass es im abgefragten Log-Bucket zwei Datenansicht-IDs gibt: _AllLogs und compute:

VIEW_ID: _AllLogs
FILTER:
CREATE_TIME:
UPDATE_TIME:

VIEW_ID: compute
FILTER: resource.type="gce_instance"
CREATE_TIME: 2024-02-20T17:41:17.405162921Z
UPDATE_TIME: 2024-02-20T17:41:17.405162921Z

Terraform

Sie können mit Terraform eine Protokollansicht erstellen und ändern. Mit Terraform können Sie Ihre Log-Ansichten jedoch nicht auflisten.

Logansicht aktualisieren

Console

  1. Rufen Sie in der Google Cloud Console die Seite Logspeicher auf.

    Zum Log-Speicher

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

  2. Wählen Sie das Projekt, den Ordner oder die Organisation aus, in dem bzw. der der Log-Bucket gespeichert ist.
  3. Wählen Sie im Bereich Log-Buckets den Namen des Log-Buckets aus, in dem die Log-Ansicht gehostet wird.
  4. Rufen Sie auf der Detailseite für den Log-Bucket den Bereich Logansichten auf.
  5. Klicken Sie in der Protokollansicht, deren Details Sie aktualisieren möchten, auf  Dreipunkt-Menü und dann auf Ansicht bearbeiten.

    Sie können die Beschreibung und den Filter für die Protokollansicht bearbeiten.

  6. Wenn Sie mit den Änderungen fertig sind, klicken Sie auf Ansicht speichern.

gcloud

Verwenden Sie den Befehl gcloud logging views update, um eine Protokollansicht zu aktualisieren oder zu ändern. Wenn Sie die Ansichts-ID nicht kennen, lesen Sie den Hilfeartikel Protokollansichten auflisten.

Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:

  • LOG_VIEW_ID: Die Kennung der Log-Ansicht, die auf 100 Zeichen beschränkt ist und nur Buchstaben, Ziffern, Unterstriche und Bindestriche enthalten darf.
  • BUCKET_NAME: Der Name des Log-Buckets.
  • LOCATION: Der Speicherort des Log-Buckets.
  • FILTER: Ein Filter, der die Loganzeige definiert. Wenn die Liste leer ist, enthält die Log-Ansicht alle Logs. Wenn Sie beispielsweise nach Logs für Compute Engine-VM-Instanzen filtern möchten, geben Sie "resource.type=gce_instance" ein.
  • DESCRIPTION: Eine Beschreibung der Log-Ansicht. Sie können beispielsweise Folgendes für die Beschreibung "New description for the log view" eingeben.
  • PROJECT_ID: Die Kennung des Projekts. Ersetzen Sie bei Bedarf --project durch --folder oder --organization.

Führen Sie den Befehl gcloud logging views update aus:

Linux, macOS oder Cloud Shell

gcloud logging views update LOG_VIEW_ID \
 --bucket=BUCKET_NAME --location=LOCATION \
 --log-filter=FILTER --description=DESCRIPTION \
 --project=PROJECT_ID

Windows (PowerShell)

gcloud logging views update LOG_VIEW_ID `
 --bucket=BUCKET_NAME --location=LOCATION `
 --log-filter=FILTER --description=DESCRIPTION `
 --project=PROJECT_ID

Windows (cmd.exe)

gcloud logging views update LOG_VIEW_ID ^
 --bucket=BUCKET_NAME --location=LOCATION ^
 --log-filter=FILTER --description=DESCRIPTION ^
 --project=PROJECT_ID

Dieser Befehl gibt keine Antwort zurück. Sie können die Änderungen mit dem Befehl gcloud logging views describe bestätigen.

Terraform

Informationen zum Anwenden oder Entfernen einer Terraform-Konfiguration finden Sie unter Grundlegende Terraform-Befehle. Weitere Informationen finden Sie in der Anbieterreferenzdokumentation zu Terraform.

Wenn Sie eine Protokollansicht in einem Projekt, Ordner oder einer Organisation mit Terraform ändern möchten, verwenden Sie die Terraform-Ressource google_logging_log_view.

Logansicht löschen

Wenn Sie eine von Ihnen erstellte Protokollansicht nicht mehr benötigen, können Sie sie löschen. Bevor Sie eine Protokollansicht löschen, sollten Sie jedoch prüfen, ob auf sie nicht von einer anderen Ressource verwiesen wird, z. B. von einer gespeicherten Abfrage.

Sie können die _Default-Logansicht im _Default-Log-Bucket nicht löschen.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Logspeicher auf.

    Zum Log-Speicher

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

  2. Wählen Sie das Projekt, den Ordner oder die Organisation aus, in dem bzw. der der Log-Bucket gespeichert ist.
  3. Wählen Sie im Bereich Log-Buckets den Namen des Log-Buckets aus, in dem die Log-Ansicht gehostet wird.
  4. Klicken Sie auf der Seite mit den Details zum Log-Bucket im Bereich Logansichten auf das Kästchen für die Logansicht, die Sie löschen möchten.
  5. Klicken Sie in der Symbolleiste des Bereichs Protokollansichten auf  Ansicht löschen und schließen Sie das Dialogfeld ab.

gcloud

So löschen Sie eine Protokollansicht:

  1. Empfohlen: Prüfen Sie Ihr Google Cloud-Projekt, um sicherzustellen, dass keine Verweise auf die Protokollansicht vorhanden sind. Überprüfen Sie Folgendes:

    • Abfragen, die über die Seiten Log-Explorer oder Log Analytics ausgeführt wurden und gespeichert oder freigegeben wurden.
    • Benutzerdefinierte Dashboards
  2. Führen Sie den Befehl gcloud logging views delete aus. Wenn Sie die Ansichts-ID nicht kennen, lesen Sie den Hilfeartikel Protokollansichten auflisten.

    Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:

    • LOG_VIEW_ID: Die Kennung der Log-Ansicht, die auf 100 Zeichen beschränkt ist und nur Buchstaben, Ziffern, Unterstriche und Bindestriche enthalten darf.
    • BUCKET_NAME: Der Name des Log-Buckets.
    • LOCATION: Der Speicherort des Log-Buckets.
    • PROJECT_ID: Die Kennung des Projekts. Ersetzen Sie bei Bedarf --project durch --folder oder --organization.

    Führen Sie den Befehl gcloud logging views delete aus:

    Linux, macOS oder Cloud Shell

    gcloud logging views delete LOG_VIEW_ID \
     --bucket=BUCKET_NAME --location=LOCATION \
     --project=PROJECT_ID

    Windows (PowerShell)

    gcloud logging views delete LOG_VIEW_ID `
     --bucket=BUCKET_NAME --location=LOCATION `
     --project=PROJECT_ID

    Windows (cmd.exe)

    gcloud logging views delete LOG_VIEW_ID ^
     --bucket=BUCKET_NAME --location=LOCATION ^
     --project=PROJECT_ID

    In der Antwort wird das Löschen bestätigt. Im Folgenden sehen Sie beispielsweise die Antwort, die beim Löschen einer Protokollansicht mit dem Namen tester zurückgegeben wird:

    Deleted [tester].
    

Terraform

Informationen zum Anwenden oder Entfernen einer Terraform-Konfiguration finden Sie unter Grundlegende Terraform-Befehle. Weitere Informationen finden Sie in der Anbieterreferenzdokumentation zu Terraform.

Logansicht beschreiben

Console

  1. Rufen Sie in der Google Cloud Console die Seite Logspeicher auf.

    Zum Log-Speicher

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

  2. Wählen Sie im Bereich Log-Buckets den Namen des Log-Buckets aus, in dem die Log-Ansicht gehostet wird.
  3. Rufen Sie auf der Detailseite für den Log-Bucket den Bereich Logansichten auf.
  4. Klicken Sie in der Protokollansicht, deren Details Sie sehen möchten, auf  Mehr und dann auf Ansicht bearbeiten.
  5. Wenn Sie das Dialogfeld schließen möchten, ohne Änderungen zu speichern, klicken Sie auf Abbrechen.

gcloud

Mit dem Befehl gcloud logging views describe können Sie detaillierte Informationen zu einer Protokollansicht abrufen. Wenn Sie die Ansichts-ID nicht kennen, lesen Sie den Hilfeartikel Protokollansichten auflisten.

Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:

  • LOG_VIEW_ID: Die Kennung der Log-Ansicht, die auf 100 Zeichen beschränkt ist und nur Buchstaben, Ziffern, Unterstriche und Bindestriche enthalten darf.
  • BUCKET_NAME: Der Name des Log-Buckets.
  • LOCATION: Der Speicherort des Log-Buckets.
  • PROJECT_ID: Die Kennung des Projekts. Ersetzen Sie bei Bedarf --project durch --folder oder --organization.

Führen Sie den Befehl gcloud logging views describe aus:

Linux, macOS oder Cloud Shell

gcloud logging views describe LOG_VIEW_ID \
 --bucket=BUCKET_NAME --location=LOCATION\
 --project=PROJECT_ID

Windows (PowerShell)

gcloud logging views describe LOG_VIEW_ID `
 --bucket=BUCKET_NAME --location=LOCATION`
 --project=PROJECT_ID

Windows (cmd.exe)

gcloud logging views describe LOG_VIEW_ID ^
 --bucket=BUCKET_NAME --location=LOCATION^
 --project=PROJECT_ID

Die Antwort enthält immer die Beschreibung und den voll qualifizierten Namen der Protokollansicht. Er enthält auch den Filter, wenn das Filterfeld nicht leer ist. Hier ist eine Beispielantwort:

createTime: '2024-02-20T17:41:17.405162921Z'
filter: resource.type="gce_instance"
name: projects/my-project/locations/global/buckets/my-bucket/views/compute
updateTime: '2024-02-20T17:41:17.405162921Z'

Terraform

Sie können mit Terraform eine Protokollansicht erstellen und ändern. Mit Terraform können Sie jedoch keine Details einer Protokollansicht anzeigen.

Mit einer Logansicht verknüpfte Logs ansehen

Sie können die Logeinträge in einer Loganzeige mit dem Log-Explorer oder auf der Seite Log Analytics aufrufen. Wenn Sie den Log-Explorer verwenden, müssen Sie den Umfang konfigurieren und eine Logansicht auswählen. Wenn Sie die Seite Log Analytics verwenden, wird eine Protokollansicht abgefragt.

So fragen Sie eine Log-Ansicht mit dem Log-Explorer ab:

  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 Logging ist.

  2. Wählen Sie die Ressourcen aus, in denen nach Logeinträgen gesucht werden soll:

    • Wenn in der Symbolleiste Projektprotokolle angezeigt wird, maximieren Sie das Menü, wählen Sie Logansicht und dann die Logansicht aus, die Sie abfragen möchten.

    • Wenn in der Symbolleiste etwas wie 1 Log-Aufruf angezeigt wird, maximieren Sie das Menü, wählen Sie Logansicht und dann die Logansicht oder die Logansichten aus, die Sie abfragen möchten.

    • Andernfalls wird in der Symbolleiste das Symbol  und der Name eines Log-Bereichs angezeigt, z. B. _Default. Maximieren Sie das Menü, wählen Sie Logansicht und dann die Logansicht aus, die Sie abfragen möchten.

Weitere Informationen finden Sie in der Dokumentation zum Log-Explorer.

Nächste Schritte

Informationen zum Steuern des Zugriffs auf bestimmte Felder in einem Logeintrag finden Sie unter Zugriff auf Feldebene konfigurieren.