Logs auf Organisations- und Ordnerebene sortieren und an unterstützte Ziele weiterleiten

In diesem Dokument wird beschrieben, wie aggregierte Senken erstellt werden. Mit aggregierten Senken können Sie kombinieren und weiterleiten, die von der Google Cloud-Ressourcen in Ihrer Organisation oder Ihrem Ordner an einem zentralen Ort speichern.

Übersicht

Aggregierte Senken kombinieren und weiterleiten Log-Einträge aus den Ressourcen in einer Organisation oder einem Ordner an ein Ziel.

Wenn Sie steuern möchten, welche Logs in diesen Ressourcen abgefragt oder weitergeleitet werden können über die Senken in diesen Ressourcen, dann können Sie eine aggregierte Senke nicht abfangen oder abfangen:

  • Eine nicht abfangende aggregierte Senke leitet Logs über Senken in einem untergeordneten Element weiter Ressourcen. Mit dieser Senke behalten Sie den Überblick über Logs in der Ressourcen, in denen sie generiert wurden. Nicht abfangende Senken sind nicht sichtbar an untergeordnete Ressourcen an.

    Sie können beispielsweise eine nicht abfangende aggregierte Senke erstellen, die Alle Logeinträge, die aus den Ordnern einer Organisation generiert wurden in einem zentralen Cloud Storage-Bucket. Die Protokolle werden in der zentralen Cloud Storage-Bucket und auch in den Ressourcen, in denen die Logs generiert wurden.

  • Eine abfangende aggregierte Senke verhindert das Routing von Logs durch Senken in untergeordneten Ressourcen mit Ausnahme von _Required-Senken. Diese Senke kann um das Speichern doppelter Kopien von Protokollen in an mehreren Orten.

    Sehen Sie sich beispielsweise Audit-Logs zum Datenzugriff an, die sehr groß sein und das Speichern mehrerer Kopien kostspielig sein. Wenn Sie aktiviert haben, können Sie ein Abfangen auf Ordnerebene Senke, die alle Audit-Logs zum Datenzugriff zur Analyse an ein zentrales Projekt weiterleitet. Diese abfangende Senke verhindert außerdem das Routing von Senken in untergeordneten Ressourcen Kopien der Logs an anderer Stelle.

    Abfangende Senken verhindern, dass Logs über den Logrouter von untergeordneten Ressourcen, es sei denn, die Logs stimmen auch mit der Senke _Required überein. Da die abgefangen werden, zählen sie nicht zu logbasierten Messwerten oder logbasierte Benachrichtigungsrichtlinien in den untergeordneten Ressourcen. Sie können sich abfangende Senken auf der Seite Logrouter der untergeordneten Ressourcen.

Informationen zum Verwalten von Senken finden Sie unter Logs an unterstützte Ziele weiterleiten: Senken verwalten

Sie können bis zu 200 Senken pro Ordner oder Organisation erstellen.

Unterstützte Ziele

Sie können nicht abfangende aggregierte Senken verwenden, um Logs innerhalb oder zwischen diesen weiterzuleiten. dieselben Organisationen und Ordner an folgende Ziele senden:

  • Cloud Logging-Bucket: Stellt Speicher in Cloud Logging bereit. In einem Log-Bucket können Logeinträge gespeichert werden die von mehreren Google Cloud-Projekten empfangen werden. Sie können Ihre Cloud Logging-Daten zusammen mit anderen Daten durch Upgrade eines Log-Buckets zur Verwendung Loganalysen und anschließendes Erstellen eines verknüpften BigQuery-Datasets. Für Informationen zum Aufrufen von Logeinträgen, die in Log-Buckets gespeichert sind, finden Sie unter Übersicht: Logs abfragen und ansehen und An Cloud Logging-Buckets weitergeleitete Logs ansehen.
  • BigQuery-Dataset: ermöglicht die Speicherung von Logeinträgen in BigQuery-Datasets. Sie können Big-Data-Analysefunktionen für die gespeicherten Logeinträge. Um Ihre Cloud Logging-Daten mit anderen Datenquellen verwendet werden, empfehlen wir, dass Sie Ihre Log-Buckets aktualisieren, Log Analytics und erstellen Sie dann ein verknüpftes BigQuery-Dataset. Informationen zum Aufrufen von an BigQuery weitergeleiteten Logeinträgen finden Sie unter An BigQuery weitergeleitete Logs ansehen
  • Cloud Storage-Bucket: Bietet die Speicherung von Logeinträgen in Cloud Storage. Aufzeichnen werden als JSON-Dateien gespeichert. Informationen zum Aufrufen des Protokolls an Cloud Storage weitergeleitete Einträge, siehe An Cloud Storage weitergeleitete Logs ansehen.
  • Pub/Sub-Thema: Bietet Unterstützung für Integrationen von Drittanbietern. Aufzeichnen werden in JSON formatiert und dann an ein Pub/Sub- . Informationen zum Aufrufen von Logeinträgen, die weitergeleitet an Pub/Sub, siehe An Pub/Sub weitergeleitete Logs ansehen
  • Splunk: Bietet Unterstützung für Splunk. Sie müssen Ihre Logeinträge an ein Pub/Sub-Thema weiterleiten dieses Thema mit Splunk abonnieren.
  • Google Cloud-Projekt: Logeinträge an ein anderes Google Cloud-Projekt weiterleiten. Wann? Logeinträge an ein anderes Google Cloud-Projekt, das Ziel empfängt der Logrouter des Projekts die Logeinträge und verarbeitet sie. Die Senken im Zielprojekt bestimmen, wie die empfangenen Logeinträge weitergeleitet. Error Reporting kann Logeinträge analysieren, wenn das Ziel -Projekt leitet diese Logeinträge an einen Log-Bucket weiter, der dem Ziel gehört Projekt arbeiten.
  • Weitere Ressourcen: Leiten Sie Ihre Logeinträge an ein unterstütztes Ziel weiter, das in einem anderen Projekt ist. Informationen zu den zu verwendenden Pfaden finden Sie unter Zielpfadformate:

Best Practices zum Abfangen von Senken

Wenn Sie eine abfangende Senke erstellen, empfehlen wir Folgendes:

  • Überlegen Sie, ob untergeordnete Ressourcen eine unabhängige Kontrolle über das Routing ihrer Ressourcen benötigen Logs. Wenn eine untergeordnete Ressource eine unabhängige Kontrolle über bestimmte Logs benötigt, stellen Sie sicher, leitet Ihre abfangende Senke diese Logs nicht weiter.

  • Fügen Sie der Beschreibung einer abfangenden Senke Kontaktinformationen hinzu. Dieses kann hilfreich sein, wenn die Personen, die die abfangende Senke verwalten, die Projekte verwalten, deren Logs abgefangen werden.

  • Testen Sie die Senkenkonfiguration, indem Sie zuerst eine nicht abfangende aggregierte um sicherzustellen, dass die richtigen Logs weitergeleitet werden.

Aggregierte Senken und VPC Service Controls

Die folgenden Einschränkungen gelten, wenn Sie aggregierte Senken und VPC Service Controls:

  • Aggregierte Senken können auf Daten aus Projekten innerhalb eines Dienstes zugreifen des Perimeters. Um zu verhindern, dass aggregierte Senken auf Daten in einem Perimeter definieren, empfehlen wir die Verwendung von IAM zur Verwaltung Logging-Berechtigungen.

  • VPC Service Controls unterstützt das Hinzufügen von Ordnern oder Organisationsressourcen zu Dienstperimetern. Daher können Sie nicht VPC Service Controls zum Schutz von Logs auf Ordner- und Organisationsebene, einschließlich aggregierter Logs. Logging verwalten Berechtigungen auf Ordner- oder Organisationsebene haben, IAM

  • Wenn Sie Logs mithilfe einer Senke auf Ordner- oder Organisationsebene an eine Ressource, die ein Dienstperimeter schützt, müssen Sie einen für den Dienstperimeter. Die Regel für eingehenden Traffic muss Zugriff zulassen vom Dienstkonto, das die aggregierte Senke verwendet, zur Ressource. Weitere Informationen finden Sie auf den folgenden Seiten:

  • Wenn Sie eine Richtlinie für eingehenden oder ausgehenden Traffic für einen Dienstperimeter festlegen, Sie können ANY_SERVICE_ACCOUNT und ANY_USER_ACCOUNT als Identitätstyp, wenn Sie eine Logsenke verwenden um Logs an Cloud Storage-Ressourcen weiterzuleiten. Sie können jedoch ANY_IDENTITY als Identitätstyp verwenden.

Hinweise

Prüfen Sie vor dem Erstellen einer Senke Folgendes:

  • Sie haben einen Google Cloud-Ordner oder eine Organisation mit Logs, die Sie im Log-Explorer sehen können.

  • Sie haben eine der folgenden IAM-Rollen für die Google Cloud-Organisation oder den Google Cloud-Ordner, von dem Sie Logs weiterleiten.

    • Inhaber (roles/owner)
    • Logging-Administrator (roles/logging.admin)
    • Autor von Log-Konfigurationen (roles/logging.configWriter)

    Mit den Berechtigungen, die in diesen Rollen enthalten sind, können Sie Senken ändern. Informationen zum Festlegen von IAM-Rollen finden Sie unter die Anleitung zur Zugriffssteuerung für Logging

  • Sie haben eine Ressource in einem unterstützten Ziel oder die Erlaubnis, eine Ressource zu erstellen.

    Das Routingziel muss vor der Senke erstellt werden. Dies erfolgt über die Google Cloud CLI, die Google Cloud Console oder die Google Cloud APIs. Sie können das Ziel in jedem Google Cloud-Projekt in jedem Organisation, aber Sie müssen sicherstellen, dass das Dienstkonto der Die Senke verfügt über Berechtigungen zum Schreiben in das Ziel.

Aggregierte Senke erstellen

Um eine nicht abfangende aggregierte Senke zu erstellen, erstellen Sie eine Senke in einer Google Cloud-Organisation oder -Ordner und legen Sie den includeChildren für die Senke fest. auf True setzen. Wenn Sie den Parameter includeChildren festlegen, wird die Senke leitet Logeinträge aus der Organisation oder dem Ordner sowie (rekursiv) von allen Ordner, Rechnungskonten oder Google Cloud-Projekten enthält. So erstellen Sie ein abfangende Senke, legen Sie sowohl includeChildren als auch interceptChildren fest auf True setzen.

So geben Sie Logeinträge an, die an Ihre Ziel ist der Wert für die Senke Einschluss- und Ausschlussfilter.

So erstellen Sie eine aggregierte Senke für Ihren Ordner oder Ihre Organisation:

Console

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

    Zum Logrouter

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

  2. Wählen Sie einen vorhandenen Ordner oder eine vorhandene Organisation aus.

  3. Wählen Sie Senke erstellen aus.

  4. Geben Sie im Bereich Senkendetails die folgenden Details ein:

    • Senkenname: Geben Sie eine Kennzeichnung für die Senke an. Beachten Sie, dass Sie die Senke nach deren Erstellung nicht mehr umbenennen, aber löschen und eine neue erstellen können.

    • Senkenbeschreibung (optional): Beschreiben Sie den Zweck oder den Anwendungsfall für die Senke.

  5. Wählen Sie im Bereich Senkenziel den Senkendienst und das Ziel aus:

    • Senkendienst auswählen: Wählen Sie den Dienst aus, an den Ihre Logs weitergeleitet werden sollen. Wenn Sie eine abfangende Senke erstellen, können Sie nur wählen Sie ein Google Cloud-Projekt als Ziel aus.

    Je nach ausgewähltem Dienst können Sie aus den folgenden Zielen auswählen:

    • Cloud Logging-Bucket: Wählen Sie einen Logging-Bucket aus oder erstellen Sie einen. Wenn Sie Log-Bucket, muss sich dieser auf Projektebene befinden. Sie können kein Log-Bucket auf Ordner- oder Organisationsebene erstellen.
    • BigQuery-Tabelle: Wählen Sie das spezifische Dataset aus, das die weitergeleiteten Logs erhalten soll, oder erstellen Sie es. Sie können auch partitionierte Tabellen verwenden.
    • Cloud Storage-Bucket: Wählen Sie den spezifischen Cloud Storage-Bucket aus, der die weitergeleiteten Logs erhalten soll, oder erstellen Sie ihn.
    • Pub/Sub-Thema: Wählen Sie das spezifische Thema aus, das die weitergeleiteten Logs erhalten soll, oder erstellen Sie es.
    • Splunk: Wählen Sie das Pub/Sub-Thema für den Splunk-Dienst aus.
    • Google Cloud-Projekt: Wählen Sie das Google Cloud-Projekt aus, für das Sie die Routenprotokolle empfangen.

      Wenn Ihr Senkenziel beispielsweise ein BigQuery-Dataset ist, wäre das Senkenziel Folgendes:

      bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID
      
  6. Führen Sie im Bereich Logs zum Einbeziehen in Senke auswählen einen der folgenden Schritte aus:

    • Wählen Sie zum Erstellen einer nicht abfangenden aggregierten Senke die Option Logs einschließen aus von dieser und allen untergeordneten Ressourcen aufgenommen wurden.

    • Wählen Sie zum Erstellen einer abfangenden Senke die Option Logs abfangen von dieser Organisation und aller untergeordneten Ressourcen.

  7. Schließen Sie das Dialogfeld ab, indem Sie einen Filterausdruck im Feld Feld Einschlussfilter erstellen, der den gewünschten Logeinträgen entspricht aufgenommen werden. Wenn Sie keinen Filter festlegen, werden alle Logs an das Ziel weitergeleitet werden.

    Sie können z. B. einen Filter erstellen, um alle Datenzugriffe zu einem einzelnen Logging-Bucket hinzufügen. Dieser Filter sieht wie zum Beispiel so:

    LOG_ID("cloudaudit.googleapis.com/data_access") OR LOG_ID("externalaudit.googleapis.com/data_access")
    

    Beachten Sie, dass ein Filter nicht länger als 20.000 Zeichen sein darf.

  8. Optional: Um zu überprüfen, ob Sie den richtigen Filter eingegeben haben, wählen Sie Logs als Vorschau ansehen Dadurch wird der Log-Explorer in einem neuen Tab mit den Filter bereits ausgefüllt.

  9. (Optional) Gehen Sie im Bereich Logs auswählen, die aus der Senke ausgeschlossen werden sollen so vor:

    1. Geben Sie in das Feld Name des Ausschlussfilters einen Namen ein.

    2. Geben Sie im Abschnitt Ausschlussfilter erstellen einen Filterausdruck ein, der den Logeinträgen entspricht, die Sie ausschließen möchten. Mit der Funktion sample können Sie auch einen Teil der Logeinträge auswählen, die ausgeschlossen werden sollen.

      Um beispielsweise die Logs eines bestimmten Projekts an das Ziel weitergeleitet werden, fügen Sie den folgenden Ausschlussfilter hinzu:

      logName:projects/PROJECT_ID
      

      Verwenden Sie das logische ODER, um Logs aus mehreren Projekten auszuschließen , um logName-Klauseln zu verknüpfen.

    Sie können bis zu 50 Ausschlussfilter pro Senke erstellen. Beachten Sie, dass ein Filter nicht länger als 20.000 Zeichen sein darf.

  10. Wählen Sie Senke erstellen aus.

API

Verwenden Sie zum Erstellen einer Senke in der Logging API die Methode organizations.sinks.create oder folders.sinks.create. Bereiten Sie die Argumente für die Methode so vor:

  1. Legen Sie als parent-Parameter die Google Cloud-Organisation oder den Google Cloud-Ordner fest, in dem die Senke erstellt werden soll. Geben Sie als übergeordnete Ressource eine der folgenden an:

    • organizations/ORGANIZATION_ID
    • folders/FOLDER_ID
  2. Führen Sie im LogSink im Methodenanfragetext einen der Folgendes:

    • Legen Sie includeChildren fest, um eine nicht abfangende aggregierte Senke zu erstellen. an True.

    • Um eine abfangende Senke zu erstellen, legen Sie includeChildren und interceptChildren-Parameter auf True.

  3. Legen Sie das Attribut filter so fest, dass es den Logeinträgen entspricht, die Sie einschließen möchten. Beachten Sie, dass ein Filter nicht länger als 20.000 Zeichen sein darf.

    Einige Beispiele für nützliche Filter finden Sie unter Filter für aggregierte Senken erstellen.

  4. Legen Sie die verbleibenden LogSink-Felder wie gewohnt für Senken fest. Weitere Informationen finden Sie unter Logs an unterstützte Ziele weiterleiten

  5. Rufen Sie zum Erstellen der Senke die Methode organization.sinks.create oder folders.sinks.create auf.

  6. Rufen Sie den Namen des Dienstkontos aus dem Feld writer_identity ab, das von der API-Antwort zurückgegeben wurde.

  7. Erteilen Sie diesem Dienstkonto Schreibzugriff auf das Senkenziel.

    Wenn Sie keine Berechtigung zu dieser Änderung für das Senkenziel haben, senden Sie den Namen des Dienstkontos an einen Nutzer mit der erforderlichen Berechtigung.

    Weitere Informationen zum Zuweisen von Ressourcenberechtigungen zu Dienstkonten finden Sie im Abschnitt Zielberechtigungen festlegen.

gcloud

Verwenden Sie zum Erstellen einer aggregierten Senke die Methode logging sinks create . Um eine nicht abfangende aggregierte Senke zu erstellen, geben Sie die Flag --include-children. Um eine abfangende Senke zu erstellen, geben Sie sowohl den Parameter Die Flags --include-children und --intercept-children.

  1. Geben Sie den Namen, das Senkenziel, den Filter und die ID Ordner oder Organisation, von der aus Sie Logs weiterleiten: Beispiel für eine nicht abfangende aggregierte Senke:

    gcloud logging sinks create SINK_NAME \
      SINK_DESTINATION  --include-children \
      --folder=FOLDER_ID --log-filter="LOG_FILTER"
    

    Wenn Sie beispielsweise eine aggregierte Senke auf Ordnerebene erstellen und deren Ziel ein BigQuery-Dataset ist, könnte Ihr Befehl so aussehen:

    gcloud logging sinks create SINK_NAME \
      bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID --include-children \
      --folder=FOLDER_ID --log-filter="logName:activity"
    

    Hinweise:

    • Um eine Senke auf Organisationsebene zu erstellen, ersetzen Sie --folder=FOLDER_ID durch --organization=ORGANIZATION_ID.

    • Damit die Senke alle Ressourcen in der Organisation umfasst, muss das Flag --include-children gesetzt sein, selbst wenn das Flag --organization an create übergeben wird. Wenn das Flag auf false (Standardeinstellung) gesetzt ist, leitet eine Senke nur Logs aus der Hostressource weiter.

    • Einige Beispiele für nützliche Filter finden Sie unter Filter für aggregierte Senken erstellen.

  2. Ermitteln Sie anhand der Ausgabe des Befehls den Namen des Dienstkontos, mit dem die Senke erstellt wurde.

  3. Erteilen Sie diesem Dienstkonto Schreibzugriff auf das Senkenziel.

    Wenn Sie keine Berechtigung zu dieser Änderung für das Senkenziel haben, senden Sie den Namen des Dienstkontos an einen Nutzer mit der erforderlichen Berechtigung.

    Weitere Informationen zum Zuweisen von Ressourcenberechtigungen zu Dienstkonten finden Sie im Abschnitt Zielberechtigungen festlegen.

Es kann einige Minuten dauern, bis alle an einer Senke vorgenommenen Änderungen wirksam werden.

Filter für aggregierte Senken erstellen

Wie alle anderen Senken enthält auch die zusammengefasste Senke einen Filter für die Auswahl einzelner Logeinträge. Beispiele für Filter, die Sie zum Erstellen der aggregierten Senke verwenden können, finden Sie unter Beispielabfragen mit dem Log-Explorer.

Im Folgenden finden Sie einige Beispiele für Filtervergleiche, die bei Verwendung des Features für aggregierte Senken hilfreich sein können. In manchen Beispielen wird folgende Notation verwendet:

  • : ist der Teilstringoperator. Ersetzen Sie den Operator = nicht.
  • ... steht für alle weiteren Filtervergleiche.
  • Variablen sind durch farbigen Text gekennzeichnet. Ersetzen Sie sie durch gültige Werte.

Beachten Sie, dass ein Filter nicht länger als 20.000 Zeichen sein darf.

Weitere Informationen zur Filtersyntax finden Sie unter Logging-Abfragesprache.

Protokollquelle auswählen

Bei einer aggregierten Senke gilt für jede untergeordnete Ressource der Organisation oder des Ordners werden die Einschluss- und Ausschlussfilter der Senke auf jeden Logeintrag angewendet, an die untergeordnete Ressource gesendet. Ein Logeintrag, der mit einer der Einschlussfilter weitergeleitet wird.

Wenn Sie möchten, dass die Senke Logs von allen untergeordneten Ressourcen weiterleitet, Projekt, Ordner oder Organisation angeben in den Ein- und Ausschlussfiltern der Senke. Angenommen, Sie eine aggregierte Senke für eine Organisation mit dem folgenden Filter konfigurieren:

resource.type="gce_instance"

Beim vorherigen Filter werden Logs mit dem Ressourcentyp Compute Engine-Instanzen, die in ein untergeordnetes Element dieser Organisation geschrieben werden werden von der aggregierten Senke an das Ziel weitergeleitet.

Es kann jedoch Situationen geben, in denen Sie eine aggregierte Senke verwenden möchten, um Logs nur von bestimmten untergeordneten Ressourcen weiterzuleiten. Zum Beispiel zur Compliance Gründe, warum Sie Audit-Logs aus bestimmten Ordnern oder Projekten speichern sollten in einem eigenen Cloud Storage-Bucket. Konfigurieren Sie in diesen Fällen die Einschlussfilter, um alle untergeordneten Ressourcen anzugeben, deren Logs Sie weiterleiten möchten. Wenn Sie Logs aus einem Ordner und allen darin enthaltenen Projekten weiterleiten möchten, muss der Filter den Ordner und alle Projekte auflisten, die in diesen Ordner erstellen und die Anweisungen mit einer OR-Klausel verknüpfen.

Die folgenden Filter beschränken Logs auf bestimmte Google Cloud-Projekte. Ordner oder Organisationen:

logName:"projects/PROJECT_ID/logs/" AND ... 
logName:("projects/PROJECT_A_ID/logs/" OR "projects/PROJECT_B_ID/logs/") AND ... 
logName:"folders/FOLDER_ID/logs/" AND ... 
logName:"organizations/ORGANIZATION_ID/logs/" AND ... 

So können Sie z. B. nur Logs weiterleiten, die in Compute Engine-Instanzen geschrieben wurden, im Ordner my-folder geschrieben wurden, verwenden Sie folgenden Filter:

logName:"folders/my-folder/logs/" AND resource.type="gce_instance"

Mit dem vorherigen Filter werden Logs, die in eine andere Ressource als my-folder geschrieben wurden, einschließlich Logs, die in Google Cloud-Projekte geschrieben wurden, die untergeordnete Elemente von my-folder sind, nicht an das Ziel weitergeleitet.

Überwachte Ressource auswählen

So leiten Sie Logs nur von einer bestimmten überwachten Ressource in einem Google Cloud-Projekt – verwenden Sie mehrere Vergleiche, um die Ressource anzugeben genau:

logName:"projects/PROJECT_ID/logs" AND
resource.type=RESOURCE_TYPE AND
resource.labels.instance_id=INSTANCE_ID

Eine Liste mit Ressourcentypen finden Sie unter Überwachte Ressourcentypen.

Beispiel für Logeinträge auswählen

Fügen Sie die integrierte Funktion sample hinzu, um nach dem Zufallsprinzip Stichproben von Logeinträgen weiterzuleiten. Wenn Sie beispielsweise nur zehn Prozent der Logeinträge weiterleiten möchten, die mit Ihrem aktuellen Filter übereinstimmen, fügen Sie Folgendes hinzu:

sample(insertId, 0.10) AND ...

Weitere Informationen finden Sie unter sample-Funktion.

Weitere Informationen zu Cloud Logging-Filtern finden Sie unter Logging-Abfragesprache.

Zielberechtigungen festlegen

In diesem Abschnitt wird beschrieben, wie Sie Logging die IAM-Berechtigungen (Identitäts- und Zugriffsverwaltung) zum Schreiben von Logs an das Ziel der Senke gewähren. Eine vollständige Liste der Logging-Rollen und -Berechtigungen finden Sie unter Zugriffssteuerung.

Wenn Sie eine Senke erstellen oder aktualisieren, die Logs an ein anderes Ziel weiterleitet, als einen Log-Bucket im aktuellen Projekt, ein Dienstkonto für diese Senke. ist erforderlich. Logging erstellt und verwaltet Dienstkonto für Sie:

  • Seit dem 22. Mai 2023 gilt: Wenn Sie eine Senke und keinen Dienst erstellen, Konto für die zugrunde liegende Ressource vorhanden ist, erstellt Logging Dienstkonto. Logging verwendet dasselbe Dienstkonto alle Senken in der zugrunde liegenden Ressource. Ressourcen können Google Cloud-Projekte, eine Organisation, ein Ordner oder eine Rechnungskonto.
  • Vor dem 22. Mai 2023 wurde in Logging ein Dienst erstellt für jede Senke. Seit dem 22. Mai 2023 Logging verwendet ein freigegebenes Dienstkonto für alle Senken im zugrunde liegende Ressource.

Die Identität des Autors einer Senke ist die Kennung des Dienstes das mit der Senke verknüpft ist. Alle Senken haben eine Autorenidentität, es sei denn, sie haben In einen Log-Bucket im aktuellen Google Cloud-Projekt schreiben

Um Logs an eine durch einen Dienstperimeter geschützte Ressource weiterzuleiten, müssen Sie das Dienstkonto für diese Senke einer Zugriffsebene hinzufügen und es dann dem Zieldienstperimeter zuweisen. Dies ist für nicht aggregierte Senken nicht erforderlich. Weitere Informationen finden Sie unter VPC Service Controls: Cloud Logging.

So legen Sie Berechtigungen fest, damit Ihre Senke an ihr Ziel weiterleitet:

Console

  1. Um Informationen zum Dienstkonto für Ihre Senke zu erhalten, Gehen Sie so vor:

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

      Zum Logrouter

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

    2. Wählen Sie Menü und dann Senkendetails aufrufen

      Im Bereich Senkendetails enthält das Feld writerIdentity Identität des Dienstkontos. Der String serviceAccount: ist Teil der Dienstkontoidentität sein. Beispiel:

      serviceAccount:service-123456789012@gcp-sa-logging.iam.gserviceaccount.com
      
  2. Gewähren Sie dem Autor im Zielprojekt die erforderliche Rolle damit das Dienstkonto in das Ziel schreibt. So weisen Sie Als Hauptkonto müssen Sie die Rolle des Inhabers (roles/owner) haben:

    • Fügen Sie für Cloud Storage-Ziele die Identität des Autors der Senke hinzu. mithilfe von IAM als Hauptkonto festlegen und ihm dann die Rolle „Storage Object Creator“ (roles/storage.objectCreator).
    • Fügen Sie für BigQuery-Ziele die Identität des Autors der Senke hinzu. mithilfe von IAM als Hauptkonto festlegen und ihm dann die Rolle „BigQuery-Datenbearbeiter“ (roles/bigquery.dataEditor).
    • Fügen Sie für Pub/Sub-Ziele, einschließlich Splunk, die Identität des Autors der Senke hinzu. mithilfe von IAM als Hauptkonto festlegen und ihm dann die Rolle „Pub/Sub-Publisher“ (roles/pubsub.publisher).
    • Für Logging-Bucket-Ziele in verschiedenen Google Cloud-Projekte hinzufügen, fügen Sie die Identität des Autors der Senke als Hauptkonto hinzu. und gewähren Sie dann die Rolle „Log-Bucket-Autor“ (roles/logging.bucketWriter).
    • Fügen Sie für Google Cloud-Projektziele den Wert der Senke hinzu. Identität des Autors mithilfe von IAM als Hauptkonto festlegen und ihr dann den Rolle „Logautor“ (roles/logging.logWriter). Insbesondere benötigt ein Auftraggeber Berechtigung „logging.logEntries.route“.
    Wenn Sie nicht die Rolle Inhaber für das Ziel der Senke haben, bitten Sie einen Projektinhaber, die Identität des Autors als Prinzipal hinzufügen.

API

  1. Um Informationen zum Dienstkonto für Ihre Senke zu erhalten, API-Methode aufrufen organizations.sinks.get oder folders.sinks.get.

    Das Feld writerIdentity enthält die Identität des Dienstkontos. Der String serviceAccount: ist Teil der Identität des Dienstkontos. Beispiel:

    serviceAccount:service-123456789012@gcp-sa-logging.iam.gserviceaccount.com
    
  2. Gewähren Sie dem Autor im Zielprojekt die erforderliche Rolle damit das Dienstkonto in das Ziel schreibt. So weisen Sie Als Hauptkonto müssen Sie die Rolle des Inhabers (roles/owner) haben:

    • Fügen Sie für Cloud Storage-Ziele die Identität des Autors der Senke hinzu. mithilfe von IAM als Hauptkonto festlegen und ihm dann die Rolle „Storage Object Creator“ (roles/storage.objectCreator).
    • Fügen Sie für BigQuery-Ziele die Identität des Autors der Senke hinzu. mithilfe von IAM als Hauptkonto festlegen und ihm dann die Rolle „BigQuery-Datenbearbeiter“ (roles/bigquery.dataEditor).
    • Fügen Sie für Pub/Sub-Ziele, einschließlich Splunk, die Identität des Autors der Senke hinzu. mithilfe von IAM als Hauptkonto festlegen und ihm dann die Rolle „Pub/Sub-Publisher“ (roles/pubsub.publisher).
    • Für Logging-Bucket-Ziele in verschiedenen Google Cloud-Projekte hinzufügen, fügen Sie die Identität des Autors der Senke als Hauptkonto hinzu. und gewähren Sie dann die Rolle „Log-Bucket-Autor“ (roles/logging.bucketWriter).
    • Fügen Sie für Google Cloud-Projektziele den Wert der Senke hinzu. Identität des Autors mithilfe von IAM als Hauptkonto festlegen und ihr dann den Rolle „Logautor“ (roles/logging.logWriter). Insbesondere benötigt ein Auftraggeber Berechtigung „logging.logEntries.route“.
    Wenn Sie nicht die Rolle Inhaber für das Ziel der Senke haben, bitten Sie einen Projektinhaber, die Identität des Autors als Prinzipal hinzufügen.

gcloud

  1. Führen Sie den Befehl folgenden Befehl:

    gcloud logging sinks describe SINK_NAME
    

    Das Feld writerIdentity enthält die Identität des Dienstkontos. Der String serviceAccount: ist Teil der Identität des Dienstkontos. Beispiel:

    serviceAccount:service-123456789012@gcp-sa-logging.iam.gserviceaccount.com
    
  2. Gewähren Sie dem Autor im Zielprojekt die erforderliche Rolle damit das Dienstkonto in das Ziel schreibt. So weisen Sie Als Hauptkonto müssen Sie die Rolle des Inhabers (roles/owner) haben:

    • Fügen Sie für Cloud Storage-Ziele die Identität des Autors der Senke hinzu. mithilfe von IAM als Hauptkonto festlegen und ihm dann die Rolle „Storage Object Creator“ (roles/storage.objectCreator).
    • Fügen Sie für BigQuery-Ziele die Identität des Autors der Senke hinzu. mithilfe von IAM als Hauptkonto festlegen und ihm dann die Rolle „BigQuery-Datenbearbeiter“ (roles/bigquery.dataEditor).
    • Fügen Sie für Pub/Sub-Ziele, einschließlich Splunk, die Identität des Autors der Senke hinzu. mithilfe von IAM als Hauptkonto festlegen und ihm dann die Rolle „Pub/Sub-Publisher“ (roles/pubsub.publisher).
    • Für Logging-Bucket-Ziele in verschiedenen Google Cloud-Projekte hinzufügen, fügen Sie die Identität des Autors der Senke als Hauptkonto hinzu. und gewähren Sie dann die Rolle „Log-Bucket-Autor“ (roles/logging.bucketWriter).
    • Fügen Sie für Google Cloud-Projektziele den Wert der Senke hinzu. Identität des Autors mithilfe von IAM als Hauptkonto festlegen und ihr dann den Rolle „Logautor“ (roles/logging.logWriter). Insbesondere benötigt ein Auftraggeber Berechtigung „logging.logEntries.route“.
    Wenn Sie nicht die Rolle Inhaber für das Ziel der Senke haben, bitten Sie einen Projektinhaber, die Identität des Autors als Prinzipal hinzufügen.

Nächste Schritte