Kurzanleitung: Ereignisse mit Cloud-Audit-Logging empfangen (Google Cloud Console)

In dieser Kurzanleitung wird beschrieben, wie Sie mit Eventarc Ereignisse aus Cloud Storage in einem nicht authentifizierten Cloud Run-Dienst erhalten.

Sie können diese Kurzanleitung mit der Google Cloud Console ausführen. Eine Anleitung zum Verwenden des gcloud-Befehlszeilentools finden Sie unter Mit dem gcloud-Tool Ereignisse mit Cloud-Audit-Logging empfangen.

In dieser Kurzanleitung werden folgende Schritte erläutert:

  1. Cloud Storage-Bucket als Ereignisquelle erstellen

  2. Ereignisempfängerdienst für Cloud Run bereitstellen

  3. Ereignistrigger erstellen

  4. Ereignis erstellen, indem Sie eine Datei in den Cloud Storage-Bucket hochladen und in den Cloud Run-Logs ansehen

Hinweis

  1. Melden Sie sich bei Ihrem Google Cloud-Konto an. Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
  2. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  3. Die Abrechnung für das Cloud-Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für Ihr Projekt aktiviert ist.

  4. Cloud Run, Cloud Logging, Cloud Build, Pub/Sub, Eventarc APIs aktivieren.

    Aktivieren Sie die APIs

Cloud Storage-Bucket erstellen

In dieser Kurzanleitung wird Cloud Storage als Ereignisquelle verwendet. So erstellen Sie einen Storage-Bucket:

  1. Wechseln Sie in der Cloud Console zu Cloud Storage.

    Cloud Storage aufrufen

  2. Klicken Sie auf Bucket erstellen.

    Neuer Bucket

  3. Geben Sie die Bucket-Informationen ein und klicken Sie zum Ausführen der einzelnen Schritte jeweils auf Weiter:

    • Geben Sie einen eindeutigen Namen ein. Beispiel: eventarcbucket.
    • Wählen Sie Region als Standorttyp aus.
    • Wählen Sie us-central1 (Iowa) als Standort aus.
    • Wählen Sie Standard als Standardspeicherklasse aus.
    • Wählen Sie unter Zugriffssteuerung die Option Einheitlich aus.
  4. Klicken Sie auf Erstellen.

Nachdem die Ereignisquelle erstellt wurde, können Sie den Ereignisempfängerdienst in Cloud Run bereitstellen.

Ereignisempfängerdienst in Cloud Run bereitstellen

Stellen Sie einen Cloud Run-Dienst bereit, der Ereignisse empfängt und loggt. So stellen Sie den Beispiel-Ereignisempfängerdienst bereit:

  1. Erstellen Sie eine Verzweigung des Beispiel-Repositorys zu Ihrem GitHub-Konto:

    Go

    1. Rufen Sie in GitHub GoogleCloudPlatform/golang-samples auf.

    2. Klicken Sie auf Fork.

      Screenshot der Schaltfläche "Fork"

    3. Wählen Sie bei entsprechender Aufforderung den Standort für die Verzweigung des Repositorys aus.

    Java

    1. Rufen Sie in GitHub GoogleCloudPlatform/java-docs-samples auf.

    2. Klicken Sie auf Fork.

      Screenshot der Schaltfläche "Fork"

    3. Wählen Sie bei entsprechender Aufforderung den Standort für die Verzweigung des Repositorys aus.

    .NET

    1. Rufen Sie in GitHub GoogleCloudPlatform/dotnet-docs-samples auf.

    2. Klicken Sie auf Fork.

      Screenshot der Schaltfläche "Fork"

    3. Wählen Sie bei entsprechender Aufforderung den Standort für die Verzweigung des Repositorys aus.

    Node.js

    1. Rufen Sie in GitHub GoogleCloudPlatform/nodejs-docs-samples auf.

    2. Klicken Sie auf Fork.

      Screenshot der Schaltfläche "Fork"

    3. Wählen Sie bei entsprechender Aufforderung den Standort für die Verzweigung des Repositorys aus.

    Python

    1. Rufen Sie in GitHub GoogleCloudPlatform/python-docs-samples auf.

    2. Klicken Sie auf Fork.

      Screenshot der Schaltfläche "Fork"

    3. Wählen Sie bei entsprechender Aufforderung den Standort für die Verzweigung des Repositorys aus.

  2. Rufen Sie Cloud Run in der Cloud Console auf.

    Öffnen Sie Cloud Run.

  3. Klicken Sie auf Dienst erstellen, um das Formular Dienst erstellen aufzurufen.

    create-service-page

  4. Wählen Sie Cloud Run aus.

  5. Wählen Sie us-central1(Iowa) als Region für den Dienst aus.

  6. Geben Sie den gewünschten Dienstnamen ein. z. B. helloworld-events.

  7. Klicken Sie auf Next (Weiter).

  8. Wählen Sie Neue Überarbeitungen aus dem Quell-Repository kontinuierlich bereitstellen aus.

  9. Klicken Sie auf Mit Cloud Build einrichten, um das Formular Mit Cloud Build einrichten zu öffnen.

    Seite "Mit Cloud Build einrichten"

    Im Formular Mit Cloud Build einrichten:

    1. Aktivieren Sie bei entsprechender Aufforderung die Cloud Build API und die Container Analysis API.
    2. Wählen Sie GitHub als Repository-Anbieter aus.

    3. Wenn Sie dazu aufgefordert werden, klicken Sie auf Google Cloud Build installieren.

    4. Wählen Sie das von Ihnen verzweigte GitHub-Repository als Repository aus.

    5. Klicken Sie auf Next (Weiter).

    6. Geben Sie im Feld Branch den Wert ^master$ ein.

    7. Wählen Sie als Build-Typ die Option Dockerfile aus und geben Sie den Speicherort des Dockerfiles an.

      eventarc/audit-storage/Dockerfile oder eventarc/audit_storage/Dockerfile (Go)

    8. Klicken Sie auf Speichern.

  10. Klicken Sie im Formular Dienst erstellen auf Weiter.

  11. Gehen Sie im Abschnitt Konfigurieren, wie dieser Dienst ausgelöst wird so vor:

    • Wählen Sie Gesamten Traffic zulassen aus.

    • Wählen Sie Nicht authentifizierte Aufrufe zulassen aus.

  12. Optional können Sie auf Eventarc-Trigger hinzufügen klicken und einen Trigger erstellen. Sie können den Trigger aber auch erstellen, nachdem Sie einen Dienst erstellt haben. Weitere Informationen zum Erstellen eines Triggers finden Sie unter Eventarc-Trigger erstellen.

  13. Klicken Sie auf Erstellen.

Eventarc-Trigger erstellen

Der Eventarc-Trigger sendet Ereignisse aus dem Cloud Storage-Bucket an den Cloud Run-Dienst helloworld-events.

  1. Rufen Sie Cloud Run in der Cloud Console auf.

    Öffnen Sie Cloud Run.

  2. Klicken Sie in der Liste der Dienste auf den von Ihnen erstellten Dienst, um die Seite Dienstdetails aufzurufen.

  3. Klicken Sie auf den Tab Trigger und dann auf Eventarc-Trigger hinzufügen.

  4. Wählen Sie in der Drop-down-Liste Ereignis auswählen die Option Cloud Storage > storage.objects.create aus.

  5. Klicken Sie auf Alle aktivieren, um die erforderlichen Audit-Logtypen für den storage.googleapis.com-Dienst zu aktivieren.

  6. Wählen Sie im Feld Ereignisse empfangen von die Option Einzelne Region und dann us-central1 als die Region aus, von der Ereignisse empfangen werden sollen.

  7. Wenn Sie dazu aufgefordert werden, weisen Sie dem Compute Engine-Dienstkonto die Rolle eventarc.eventReceiver und dem Pub/Sub-Dienstkonto die Rolle iam.serviceAccountTokenCreator zu.

    Neuen Trigger einrichten

  8. Klicken Sie auf Speichern.

Ereignisse erstellen und ansehen

  1. So erstellen Sie ein Ereignis:

    1. Erstellen Sie eine Textdatei mit dem Dateinamen random.txt und dem Text "Hello World".

    2. Wechseln Sie in der Cloud Console zu Cloud Storage.

      Cloud Storage aufrufen

    3. Wählen Sie den von Ihnen erstellten Storage-Bucket aus.

    4. Klicken Sie auf dem Tab Objekte auf Dateien hochladen und laden Sie die Datei random.txt hoch.

    Beim Upload wird ein Ereignis erstellt und der Cloud Run-Dienst loggt die Nachricht des Ereignisses.

  2. So rufen Sie den Logeintrag auf:

    1. Rufen Sie Cloud Run in der Cloud Console auf.

      Öffnen Sie Cloud Run.

    2. Klicken Sie in der Liste der Dienste auf den Namen des erstellten Dienstes, um die zugehörige Seite Dienstdetails aufzurufen.

    3. Klicken Sie auf den Tab Logs, um die Anfrage- und Containerlogs für alle Überarbeitungen des Dienstes abzurufen. Sie können nach Logschweregrad filtern.

    4. Suchen Sie nach einem Logeintrag wie dem folgenden:

       Detected change in Cloud Storage bucket: storage.googleapis.com/projects/_/buckets/eventarcbucket/objects/random.txt
       

Das war's auch schon! Sie haben einen Ereignisempfängerdienst in Cloud Run erfolgreich bereitgestellt, einen Eventarc-Trigger erstellt sowie ein Ereignis aus Cloud Storage generiert und in den Cloud Run-Logs angesehen.

Bereinigen

Für Cloud Run fallen keine Kosten an, wenn der Dienst nicht verwendet wird. Allerdings können für das Speichern des Container-Images in Container Registry, die Eventarc-Ressourcen und das Speichern von Dateien im Cloud Storage-Bucket Gebühren berechnet werden.

Sie können das Image löschen und Ihren Storage-Bucket löschen. So löschen Sie den Eventarc-Trigger:

  1. Rufen Sie Cloud Run in der Cloud Console auf.

    Öffnen Sie Cloud Run.

  2. Klicken Sie in der Liste der Dienste auf den von Ihnen erstellten Dienst, um die Seite Dienstdetails aufzurufen.

  3. Klicken Sie auf den Tab Trigger und dann auf Trigger löschen.

Alternativ können Sie Ihr Google Cloud-Projekt löschen, um wiederkehrende Gebühren zu vermeiden. Durch das Löschen des Cloudprojekts wird die Abrechnung für alle in diesem Projekt verwendeten Ressourcen beendet.

  1. Wechseln Sie in der Cloud Console zur Seite Ressourcen verwalten.

    Zur Seite „Ressourcen verwalten“

  2. Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie dann auf Löschen.
  3. Geben Sie im Dialogfeld die Projekt-ID ein und klicken Sie auf Shut down (Beenden), um das Projekt zu löschen.

Nächste Schritte