Cronjobs mit VPC Service Controls sichern

VPC Service Controls ist ein Google Cloud-Feature, mit dem Sie einen sicheren Perimeter einrichten können, der vor Daten-Exfiltration schützt. In dieser Anleitung erfahren Sie, wie Sie Cloud Scheduler-Jobs in einen VPC Service Controls-Perimeter aufnehmen.

Beschränkungen

Die folgenden Einschränkungen gelten für die Unterstützung von VPC Service Controls für Cloud Scheduler.

Erzwungene Aktionen

VPC Service Controls werden nur für die folgenden Aktionen erzwungen:

  • Cloud Scheduler-Joberstellung
  • Updates für Cloud Scheduler-Jobs

Warum ist das Problem überhaupt bedeutsam?

Da VPC Service Controls nur bei der Joberstellung und Jobaktualisierungen erzwungen wird, VPC Service Controls wird nicht automatisch für Jobs erzwungen, die erstellt, bevor Sie Cloud Scheduler zu VPC Service Controls hinzugefügt haben des Perimeters. Jobs werden auch dann weiter ausgeführt, wenn die Jobziele nicht zu Ihren VPC Service Controls-Perimeter oder keine unterstützten Ziele. So erzwingen Sie VPC Service Controls für alle Cloud Scheduler-Jobs:

  • Jobs mit Zielen, die entweder nicht unterstützt werden oder sich außerhalb Ihres Perimeter befinden: Löschen Sie die Jobs. Siehe Nicht konforme Jobs löschen
  • Jobs mit Zielen, die sowohl unterstützt als auch innerhalb Ihres Perimeter liegen: Führen Sie nach dem Hinzufügen von Cloud Scheduler zu Ihrem Perimeter ein Update für jeden Job aus. Weitere Informationen finden Sie unter Erzwingen für vorhandene Jobs.

Unterstützte Ziele

Nur die Einbindung von Cloud Scheduler in VPC Service Controls unterstützt folgende Ziele:

  • Cloud Run-Funktionen (in der URL functions.net)
  • Cloud Run (in der run.app-URL für Cloud Run-Dienste) Cloud Run-Jobziele werden nicht unterstützt. Informationen zum Unterschied zwischen Dienst- und Jobressourcen für Cloud Run finden Sie unter Dienste und Jobs: zwei Möglichkeiten zum Ausführen des Codes.
  • Dataflow API (muss sich im selben Google Cloud-Projekt befinden wie Ihr Cloud Scheduler-Job)
  • Datenpipelines (müssen sich im selben Google Cloud-Projekt wie Ihr Cloud Scheduler-Job befinden)
  • Pub/Sub (muss sich im selben Google Cloud-Projekt wie der Cloud Scheduler-Job befinden)

Nicht konforme Jobs löschen

Recommended. Löschen Sie Cloud Scheduler-Jobs mit folgenden Zielen:

  • Nicht unterstützt (siehe Unterstützte Ziele)
  • Außerhalb des VPC Service Controls-Perimeters, den Sie verwenden möchten

Anweisungen zum Löschen von Jobs finden Sie unter Job löschen

Wenn Sie diese Jobs nicht löschen, bevor Sie Cloud Scheduler hinzufügen in Ihrem VPC Service Controls-Perimeter definieren, werden die Jobs zwar weiterhin ausgeführt, VPC Service Controls wird für sie nicht erzwungen (siehe Erzwungene Aktionen).

Wenn Sie beispielsweise einen Cloud Scheduler-Job haben, der auf ein nicht unterstütztes Ziel ausgerichtet ist (z. B. eine benutzerdefinierte Cloud Run-Domain), wird der Job auch dann ausgeführt, wenn Sie Cloud Scheduler Ihrem VPC Service Controls-Perimeter hinzufügen. Er wird jedoch nicht durch VPC Service Controls geschützt. Dasselbe gilt für einen vorhandenen Job mit einem Ziel außerhalb Ihres VPC Service Controls-Perimeters.

Erforderliche IAM-Rollen hinzufügen

Erforderlich. Damit VPC Service Controls verwendet werden kann, muss der Cloud Scheduler Dienstkonto muss den Cloud Scheduler-Dienst-Agent haben IAM-Rolle Das Cloud Scheduler-Dienstkonto wurde erstellt. automatisch für Ihr Projekt. Prüfen, ob Cloud Scheduler vorhanden ist IAM-Rolle des Dienst-Agents oder gewähren Sie diese Rolle mit den folgenden Schritten: Schritte:

  1. Rufen Sie in der Google Cloud Console IAM auf.

    IAM aufrufen

  2. Klicken Sie auf das Kästchen Von Google bereitgestellte Rollenzuweisungen einschließen.

  3. Geben Sie in das Filterfeld Cloud Scheduler-Dienstkonto ein und wählen Sie diese Identität aus.

  4. Sehen Sie sich in der Spalte Rolle die Identität Cloud Scheduler-Dienstkonto an. Sie können fortfahren, wenn die folgende Rolle aufgeführt ist:

    • Cloud Scheduler-Dienst-Agent

    Wenn die Rolle des Cloud Scheduler-Dienstkontos nicht aufgeführt ist, klicken Sie auf Bearbeiten und gewähren Sie dem Nutzer die Rolle Cloud Scheduler Service Agent. Hauptkonto des Cloud Scheduler-Dienstkontos.

VPC Service Controls-Perimeter angeben

Erforderlich. Sie können einen vorhandenen Perimeter verwenden oder einen neuen erstellen, um zum Schutz Ihrer Cloud Scheduler-Jobs, die Ziele. Bei beiden Ansätzen haben Sie die Möglichkeit, Dienste anzugeben, die eingeschränkt werden sollen. Geben Sie die Cloud Scheduler API an.

  • Vorhandene Perimeter:So aktualisieren Sie einen vorhandenen VPC Service Controls-Perimeter um Cloud Scheduler einzubinden, führen Sie die Schritte für Dienstperimeter aktualisieren

  • Neue Perimeter: So erstellen Sie einen neuen Perimeter für Cloud Scheduler: folgen Sie der Anleitung, Dienstperimeter erstellen

VPC Service Controls für vorhandene Jobs erzwingen

Recommended. So erzwingen Sie VPC Service Controls für Cloud Scheduler-Jobs: die Sie erstellt haben, bevor Sie Cloud Scheduler VPC Service Controls-Perimeter, führen Sie einen update für den Job aus. Sie müssen den Job nicht ändern, aber das Update ausführen, damit VPC Service Controls auf den Job und seine zukünftigen Ausführungen angewendet werden.

Sie können ein Update für den Job über die Google Cloud Console ausführen (wählen Sie und klicken Sie auf die Schaltfläche Bearbeiten, mithilfe der API oder mit der Methode gcloud CLI verwenden können.

Wenn Sie VPC Service Controls mit der gcloud CLI für einen vorhandenen Job erzwingen möchten, führen Sie Folgendes aus:

HTTP-Ziele

gcloud scheduler jobs update http JOB_ID

Ersetzen Sie Folgendes:

  • JOB_ID: die ID Ihres Jobs

Pub/Sub-Ziele

gcloud scheduler jobs update pubsub JOB_ID

Ersetzen Sie Folgendes:

  • JOB_ID: die ID Ihres Jobs