Zugriff auf geschützte Ressourcen über einen privaten Endpunkt in einem VPC Service Controls-Perimeter zulassen

In Architekturen mit gemeinsam genutzter VPC wird das Netzwerk des Hostprojekts für das Dienstprojekt freigegeben. Bis vor Kurzem war es daher nicht möglich, diese Projekte in verschiedene Perimeter aufzuteilen. Mit der Einführung von Ein- und Ausgangsregeln, die auf privaten IP-Adressen basieren, können sich Host- und Serviceprojekte jetzt in separaten Perimetern befinden und gleichzeitig über diese Regeln kontrollierten Zugriff haben.

Referenzarchitektur

In der Dienstrichtlinie werden die folgenden Attribute verwendet:

  • VPC Service Controls-Perimeter
  • Private IP-Adressen von Access Context Manager
  • Regeln für ein- und ausgehenden Traffic

In der Netzwerkkomponente wird in dieser Architektur ein Private Service Connect-Endpunkt für den Zugriff auf Google APIs verwendet.

Architekturdiagramm zur Verwendung von VPC Service Controls zum Erstellen eines Dienstperimeters.

In dieser Referenzarchitektur werden Ein- und Ausgangsregeln und private IP-Adressen verwendet, um den Zugriff zwischen Compute Engine-Instanzen und der Agent Platform API für die folgenden Dienstgrenzen und Projekte zu steuern:

Perimeter Projekte innerhalb des Perimeters
aiml-host-perimeter aiml-host-project
high-trust-svc-perimeter ph-fm-svc-project-1
low-trust-svc-perimeter ph-fm-svc-project-2, ph-fm-svc-project-3

Der Zugriff auf die Agent Platform API über die Compute Engine-Instanzen jedes Dienstprojekts wird durch VPC Service Controls-Regeln für eingehenden und ausgehenden Traffic gesteuert. Für diese Regeln werden Access Context Manager-Zugriffsebenen verwendet, die mit privaten IP-Adressen konfiguriert sind, damit die mit den einzelnen Dienstprojekten geteilten Subnetze auf die entsprechenden Perimeters zugreifen können.

Optional: Zugriffsebene für öffentlichen Organisationsverkehr erstellen

Wenn Ihre Endnutzer über dieGoogle Cloud -Konsole auf die Gemini Enterprise Agent Platform zugreifen müssen, folgen Sie der Anleitung in diesem Abschnitt, um eine Zugriffsebene für die Verwendung in VPC Service Controls zu erstellen. Wenn der Zugriff auf APIs jedoch ausschließlich programmatisch über private Quellen erfolgt (z. B. lokal mit privatem Google-Zugriff für lokale Systeme oder Cloud Workstations), ist die Zugriffsebene nicht erforderlich.

In dieser Referenzarchitektur verwenden wir den CIDR-Bereich corp-public-block, damit Mitarbeiter der Organisation auf dieGoogle Cloud -Konsole zugreifen können.

Mit Access Context Manager können Google Cloud -Organisationsadministratoren eine differenzierte, attributbasierte Zugriffssteuerung für Ressourcen in Google Clouddefinieren.

Zugriffsebenen beschreiben die Anforderungen, die Anfragen erfüllen müssen. Hier einige Beispiele:

  • Gerätetyp und Betriebssystem (erfordert eine Chrome Enterprise Premium-Lizenz)
  • IP-Adresse
  • Standorte
  • Nutzeridentität

Wenn die Organisation Access Context Manager zum ersten Mal verwendet, müssen die Administratoren eine Zugriffsrichtlinie definieren. Dies ist ein Container für Zugriffsebenen und Dienstperimeter. So gehts:

  1. Klicken Sie in der Projektauswahl oben in der Google Cloud Console auf den Tab Alle und wählen Sie dann Ihre Organisation aus.
  2. Erstellen Sie eine einfache Zugriffsebene gemäß der Anleitung auf der Seite Einfache Zugriffsebene erstellen. Geben Sie die folgenden Optionen an:
    1. Wählen Sie unter Bedingungen erstellen in die Option Standardmodus aus.
    2. Geben Sie in das Feld Titel der Zugriffsebene corp-public-block ein.
    3. Wählen Sie im Abschnitt Bedingungen für die Option Bei erfüllter Bedingung Folgendes zurückgeben die Option WAHR aus.
    4. Wählen Sie unter IP-Subnetzwerke die Option Öffentliche IP aus.
    5. Geben Sie für den IP-Adressbereich Ihren externen CIDR-Bereich an, der Zugriff auf den VPC Service Controls-Perimeter benötigt.

VPC Service Controls-Dienstperimeter erstellen

Wenn Sie einen Dienstperimeter erstellen, können Sie den Zugriff auf geschützte Dienste von außerhalb des Perimeters unter anderem durch das Erstellen von Zugriffsebenen (in unserem Beispiel mit IP-Adressen) zulassen. In dieser Referenzarchitektur werden mehrere Dienstperimeter erstellt, in denen Ein- und Ausgangsregeln verwendet werden, um den Zugriff auf die Kommunikation zwischen der Agent Platform API und der Compute Engine API zu steuern:

  • Das Subnetz für Rechenressourcen, die zum Dienstprojekt ph-fm-svc-project-1 gehören, darf über aiml-host-project auf die Agent Platform API und die Compute Engine API in ph-fm-svc-project-1 zugreifen.
  • Das Subnetz für Compute-Ressourcen, die zu den Dienstprojekten ph-fm-svc-project-2 und ph-fm-svc-project-3 gehören, darf über die aiml-host-project auf die Agent Platform API und die Compute Engine API in Projekt ph-fm-svc-project-2 und Projekt ph-fm-svc-project-3 zugreifen.

Jedes Dienstprojekt darf auf die Compute Engine API im Hostprojekt zugreifen, da bidirektionale Flüsse zwischen dem Hostprojekt und Dienstprojekten auftreten, wenn Compute-Ressourcen in einem bestimmten Dienstprojekt erstellt werden.

In dieser Referenzarchitektur wird für jedes Subnetz eine Zugriffsebene erstellt, um mit Ein- und Ausgangsregeln die erforderlichen Flows zwischen dem Hostprojektperimeter und den einzelnen Dienstprojektperimetern zuzulassen.

Zugriffsebene erstellen gce-subnet-1

  1. Klicken Sie in der Projektauswahl oben in der Google Cloud Console auf den Tab Alle und wählen Sie dann Ihre Organisation aus.
  2. Erstellen Sie eine einfache Zugriffsebene gemäß der Anleitung auf der Seite Einfache Zugriffsebene erstellen. Geben Sie die folgenden Optionen an:
    1. Wählen Sie unter Bedingungen erstellen in die Option Standardmodus aus.
    2. Geben Sie in das Feld Titel der Zugriffsebene gce-subnet-1 ein.
    3. Wählen Sie im Abschnitt Bedingungen für die Option Bei erfüllter Bedingung Folgendes zurückgeben die Option WAHR aus.
    4. Wählen Sie unter IP-Subnetzwerke die Option Private IP aus.
    5. Wählen Sie VPC-Netzwerke aus, suchen Sie nach Ihrem Projekt und wählen Sie Ihren VPC-Namen aus.
    6. Wählen Sie für die IP-Subnetze den CIDR-Bereich aus, der das Subnetz darstellt, das das Hostprojekt mit ph-fm-svc-project-1 geteilt hat.

Zugriffsebene erstellen gce-subnet-2

  1. Klicken Sie in der Projektauswahl oben in der Google Cloud Console auf den Tab Alle und wählen Sie dann Ihre Organisation aus.
  2. Erstellen Sie eine einfache Zugriffsebene gemäß der Anleitung auf der Seite Einfache Zugriffsebene erstellen. Geben Sie die folgenden Optionen an:
    1. Wählen Sie unter Bedingungen erstellen in die Option Standardmodus aus.
    2. Geben Sie in das Feld Titel der Zugriffsebene gce-subnet-2 ein.
    3. Wählen Sie im Abschnitt Bedingungen für die Option Bei erfüllter Bedingung Folgendes zurückgeben die Option WAHR aus.
    4. Wählen Sie unter IP-Subnetzwerke die Option Private IP aus.
    5. Wählen Sie VPC-Netzwerke aus, suchen Sie nach Ihrem Projekt und wählen Sie Ihren VPC-Namen aus.
    6. Wählen Sie für die IP-Subnetze den CIDR-Bereich aus, der das Subnetz darstellt, das das Hostprojekt mit ph-fm-svc-project-2 geteilt hat.

Zugriffsebene erstellen gce-subnet-3

  1. Klicken Sie in der Projektauswahl oben in der Google Cloud Console auf den Tab Alle und wählen Sie dann Ihre Organisation aus.
  2. Erstellen Sie eine einfache Zugriffsebene gemäß der Anleitung auf der Seite Einfache Zugriffsebene erstellen. Geben Sie die folgenden Optionen an:
    1. Wählen Sie unter Bedingungen erstellen in die Option Standardmodus aus.
    2. Geben Sie in das Feld Titel der Zugriffsebene gce-subnet-3 ein.
    3. Wählen Sie im Abschnitt Bedingungen für die Option Bei erfüllter Bedingung Folgendes zurückgeben die Option WAHR aus.
    4. Wählen Sie unter IP-Subnetzwerke die Option Private IP aus.
    5. Wählen Sie VPC-Netzwerke aus, suchen Sie nach Ihrem Projekt und wählen Sie Ihren VPC-Namen aus.
    6. Wählen Sie für die IP-Subnetze den CIDR-Bereich aus, der das Subnetz darstellt, das das Hostprojekt mit ph-fm-svc-project-3 geteilt hat.

Konfigurationsschritte für aiml-host-perimeter

Konfigurationstyp für den neuen Perimeter auswählen

In diesem Abschnitt erstellen Sie einen VPC Service Controls-Dienstperimeter (aiml-host-perimeter) im Probelaufmodus. Im Probelaufmodus werden Verstöße gegen den Perimeter so protokolliert, als ob die Perimeter erzwungen würden, der Zugriff auf eingeschränkte Dienste aber nicht verhindert wird. Es wird empfohlen, den Probelaufmodus zu verwenden, bevor Sie zum erzwungenen Modus wechseln.

  1. Klicken Sie im Navigationsmenü der Google Cloud Console auf Sicherheit und dann auf VPC Service Controls.

    Gehen Sie zu Sicherheit.

  2. Wählen Sie Ihre Organisation, Ihren Ordner oder Ihr Projekt aus, wenn Sie dazu aufgefordert werden.

  3. Klicken Sie auf der Seite VPC Service Controls auf Probelaufmodus.

  4. Klicken Sie auf Neuer Perimeter.

  5. Geben Sie auf dem Tab Neuer VPC-Dienstperimeter im Feld Perimetername einen Namen für den Perimeter ein, z. B. aiml-host-perimeter.

    Ein Perimetername darf maximal 50 Zeichen lang sein und muss mit einem Buchstaben beginnen. Er darf nur lateinische ASCII-Buchstaben (a-z, A-Z), Zahlen (0-9) und Unterstriche (_) enthalten. Beim Perimeternamen wird zwischen Groß- und Kleinschreibung unterschieden und er muss innerhalb einer Zugriffsrichtlinie eindeutig sein.

  6. Übernehmen Sie die Standardeinstellungen für den Perimeter.

Zu schützende Ressourcen auswählen

  1. Klicken Sie auf Zu schützende Ressourcen.
  2. So fügen Sie Projekte oder VPC-Netzwerke hinzu, die Sie im Perimeter sichern möchten:
    1. Klicken Sie auf Ressourcen hinzufügen.
    2. Wenn Sie dem Perimeter Projekte hinzufügen möchten, klicken Sie im Bereich Ressourcen hinzufügen auf Projekt hinzufügen.
      1. Wählen Sie das Projekt aus, das Sie hinzufügen möchten, in diesem Fall aiml-host-project.
      2. Klicken Sie auf Ausgewählte Ressourcen hinzufügen. Die hinzugefügten Projekte werden im Bereich Projekte angezeigt.

Eingeschränkte Dienste auswählen

In dieser Referenzarchitektur ist der Umfang der eingeschränkten APIs begrenzt. Es werden nur die für die Gemini Enterprise Agent Platform erforderlichen APIs aktiviert. Als Best Practice empfehlen wir jedoch, beim Erstellen eines Perimeters alle Dienste einzuschränken, um das Risiko der Daten-Exfiltration aus Google Cloud -Diensten zu minimieren.

So wählen Sie die Dienste aus, die Sie im Perimeter sichern möchten:

  1. Klicken Sie auf Eingeschränkte Dienste.
  2. Klicken Sie im Bereich Eingeschränkte Dienste auf Dienste hinzufügen.
  3. Wählen Sie im Dialogfeld Geben Sie Dienste an, die eingeschränkt werden sollen die Compute Engine API aus.
  4. Klicken Sie auf Compute Engine API hinzufügen.

Optional: Über VPC zugängliche Dienste auswählen

Die Einstellung Über VPC zugängliche Dienste beschränkt die Gruppe von Diensten, die von Netzwerkendpunkten in Ihrem Dienstperimeter zugänglich sind. In dieser Referenzarchitektur behalten wir die Standardeinstellung Alle Dienste bei.

Optional: Zugriffsebene auswählen

Wenn Sie im vorherigen Abschnitt eine CIDR-Zugriffsebene für das Unternehmen erstellt haben, gehen Sie so vor, um den Zugriff auf geschützte Ressourcen von außerhalb des Perimeters zuzulassen:

  1. Klicken Sie auf Zugriffsebenen.
  2. Klicken Sie auf das Kästchen Zugriffsebene auswählen.

    Sie können Zugriffsebenen auch hinzufügen, nachdem ein Perimeter erstellt wurde.

  3. Klicken Sie das Kästchen für die Zugriffsebene an. In dieser Referenzarchitektur ist das corp-public-block.

Ingress-Richtlinie konfigurieren

Die bidirektionale Kommunikation zwischen einem Hostprojekt und einem Dienstprojekt erfolgt, wenn Compute-Ressourcen in einem bestimmten Dienstprojekt erstellt werden, da das Hostprojekt Inhaber des VPC-Netzwerk ist, das das Subnetz enthält, das für das Dienstprojekt freigegeben ist. In diesem Abschnitt konfigurieren Sie eine Regel für eingehenden Traffic, die allen drei Dienstprojekten Zugriff auf Compute-Ressourcen im Hostprojekt für diese Abläufe gewährt.

  1. Klicken Sie im linken Menü auf Richtlinie für eingehenden Traffic.
  2. Klicken Sie auf Regel hinzufügen.
  3. Führen Sie im Bereich Regel für eingehenden Traffic die folgenden Schritte aus:
    1. Wählen Sie für FROM-Attribute die folgenden FROM-Attribute des API-Clients aus:
      1. Identität: Beliebige Identität
      2. Quelle: Projekte (ph-fm-svc-project-1, ph-fm-svc-project-2, ph-fm-svc-project-3)
    2. Wählen Sie für TO-Attribute die folgenden TO-Attribute von Google Cloud-Diensten und ‑Ressourcen aus:
      1. Projekt: Alle Projekte
      2. Dienste: Ausgewählte Dienste
      3. Ausgewählte Dienste: Compute Engine API
      4. Methoden: Alle Methoden

Richtlinie für ausgehenden Traffic konfigurieren

In diesem Abschnitt konfigurieren Sie zwei Regeln für ausgehenden Traffic.

Erste Regel für ausgehenden Traffic

Da das Hostprojekt das mit ph-fm-svc-project-1 freigegebene Subnetz enthält, ist eine Egress-Regel erforderlich, damit das Subnetz vom Perimeter des Hostprojekts aus auf den Perimeter von ph-fm-svc-project-1 zugreifen kann. Die Zugriffsebene für Unternehmen ermöglicht die bidirektionale Kommunikation, die für die Erstellung von Compute-Instanzen erforderlich ist, wenn ein Endnutzer Compute-Ressourcen in einem Dienstprojekt mit der konfigurierten Zugriffsebene erstellt.

  1. Klicken Sie im linken Menü auf Richtlinie für ausgehenden Traffic.
  2. Klicken Sie auf Regel hinzufügen.
  3. Führen Sie im Bereich Regel für ausgehenden Traffic die folgenden Schritte aus:
    1. Wählen Sie für FROM-Attribute die folgenden FROM-Attribute des API-Clients aus:
      1. Identität: Beliebige Identität
      2. Wählen Sie Quellen für ausgehenden Traffic auf Zugriffsebene aktivieren aus.
      3. Zugriffsebenen corp-public-block und gce-subnet-1.
    2. Wählen Sie für TO-Attribute die folgenden TO-Attribute von Google Cloud-Diensten und ‑Ressourcen aus:
      1. Projekt: Ausgewählte Projekte
      2. Projekt hinzufügen: ph-fm-svc-project-1
      3. Dienste: Alle Dienste

Zweite Regel für ausgehenden Traffic

Da das Hostprojekt die Subnetze besitzt, die für ph-fm-svc-project-2 und ph-fm-svc-project-3 freigegeben sind, ist eine Regel für ausgehenden Traffic erforderlich, damit diese Subnetze vom Perimeter des Hostprojekts aus auf den Perimeter der Dienstprojekte zugreifen können. Die Unternehmenszugriffsebene ermöglicht die bidirektionale Kommunikation, die für die Erstellung von Compute-Instanzen erforderlich ist, wenn ein Endnutzer Compute-Ressourcen in einem Dienstprojekt mit der konfigurierten Zugriffsebene erstellt.

  1. Klicken Sie im linken Menü auf Richtlinie für ausgehenden Traffic.
  2. Klicken Sie auf Regel hinzufügen.
  3. Führen Sie im Bereich Regel für ausgehenden Traffic die folgenden Schritte aus:
    1. Wählen Sie für FROM-Attribute die folgenden FROM-Attribute des API-Clients aus:
      1. Identität: Beliebige Identität
      2. Wählen Sie Quellen für ausgehenden Traffic auf Zugriffsebene aktivieren aus.
      3. Zugriffsebenen corp-public-block, gce-subnet-2 und gce-subnet-3.
    2. Wählen Sie für TO-Attribute die folgenden TO-Attribute von Google Cloud-Diensten und ‑Ressourcen aus:
      1. Projekt: Ausgewählte Projekte
      2. Projekt hinzufügen: ph-fm-svc-project-2, ph-fm-svc-project-3
      3. Dienste: Alle Dienste

Perimeter erstellen

Nachdem Sie die vorherigen Konfigurationsschritte ausgeführt haben, klicken Sie auf Perimeter erstellen, um den Perimeter zu erstellen.

Konfigurationsschritte für high-trust-svc-perimeter

Konfigurationstyp für den neuen Perimeter auswählen

  1. Klicken Sie im Navigationsmenü der Google Cloud Console auf Sicherheit und dann auf VPC Service Controls.

    Gehen Sie zu Sicherheit.

  2. Wählen Sie Ihre Organisation, Ihren Ordner oder Ihr Projekt aus, wenn Sie dazu aufgefordert werden.

  3. Klicken Sie auf der Seite VPC Service Controls auf Probelaufmodus.

  4. Klicken Sie auf Neuer Perimeter.

  5. Geben Sie auf dem Tab Neuer VPC-Dienstperimeter im Feld Perimetername einen Namen für den Perimeter ein, z. B. high-trust-svc-perimeter.

    Ein Perimetername darf maximal 50 Zeichen lang sein und muss mit einem Buchstaben beginnen. Er darf nur lateinische ASCII-Buchstaben (a-z, A-Z), Zahlen (0-9) und Unterstriche (_) enthalten. Beim Perimeternamen wird zwischen Groß- und Kleinschreibung unterschieden und er muss innerhalb einer Zugriffsrichtlinie eindeutig sein.

  6. Übernehmen Sie die Standardeinstellungen für den Perimeter.

Zu schützende Ressourcen auswählen

  1. Klicken Sie auf Zu schützende Ressourcen.
  2. So fügen Sie Projekte oder VPC-Netzwerke hinzu, die Sie im Perimeter sichern möchten:
    1. Klicken Sie auf Ressourcen hinzufügen.
    2. Wenn Sie dem Perimeter Projekte hinzufügen möchten, klicken Sie im Bereich Ressourcen hinzufügen auf Projekt hinzufügen.
      1. Wählen Sie das Projekt aus, das Sie hinzufügen möchten, in diesem Fall ph-fm-svc-project-1.
      2. Klicken Sie auf Ausgewählte Ressourcen hinzufügen. Die hinzugefügten Projekte werden im Bereich Projekte angezeigt.

Eingeschränkte Dienste auswählen

In dieser Referenzarchitektur ist der Umfang der eingeschränkten APIs begrenzt, sodass nur die für Gemini erforderlichen APIs aktiviert werden. Wir empfehlen jedoch, beim Erstellen eines Perimeters alle Dienste einzuschränken, um das Risiko der Daten-Exfiltration aus Google Cloud -Diensten zu verringern.

So wählen Sie die Dienste aus, die Sie im Perimeter sichern möchten:

  1. Klicken Sie auf Eingeschränkte Dienste.
  2. Klicken Sie im Bereich Eingeschränkte Dienste auf Dienste hinzufügen.
  3. Wählen Sie im Dialogfeld Geben Sie Dienste an, die eingeschränkt werden sollen die Compute Engine API aus.
  4. Klicken Sie auf Compute Engine API hinzufügen.
  5. Klicken Sie im Bereich Eingeschränkte Dienste auf Dienste hinzufügen.
  6. Wählen Sie im Dialogfeld Geben Sie Dienste an, die eingeschränkt werden sollen die Agent Platform API aus.
  7. Klicken Sie auf Agent Platform API hinzufügen.

Optional: Über VPC zugängliche Dienste auswählen

Die Einstellung Über VPC zugängliche Dienste beschränkt die Gruppe von Diensten, die von Netzwerkendpunkten in Ihrem Dienstperimeter zugänglich sind. In dieser Referenzarchitektur behalten wir die Standardeinstellung Alle Dienste bei.

Optional: Zugriffsebene auswählen

Wenn Sie im vorherigen Abschnitt eine CIDR-Zugriffsebene für das Unternehmen erstellt haben, gehen Sie so vor, um den Zugriff auf geschützte Ressourcen von außerhalb des Perimeters zuzulassen:

  1. Klicken Sie auf Zugriffsebenen.
  2. Klicken Sie auf das Kästchen Zugriffsebene auswählen.

    Sie können Zugriffsebenen auch hinzufügen, nachdem ein Perimeter erstellt wurde.

  3. Klicken Sie das Kästchen für die Zugriffsebene an. In dieser Referenzarchitektur ist das corp-public-block.

Ingress-Richtlinie konfigurieren

Da das Hostprojekt das mit ph-fm-svc-project-1 freigegebene Subnetz besitzt, ist eine Ingress-Regel erforderlich, um den Zugriff dieses Subnetzes auf den Perimeter von ph-fm-svc-project-1 über das Hostprojekt zu ermöglichen. Dadurch können die Compute-Instanzen von ph-fm-svc-project-1 auf den verwalteten Dienst in ph-fm-svc-project-1 zugreifen.

  1. Klicken Sie im linken Menü auf Richtlinie für eingehenden Traffic.
  2. Klicken Sie auf Regel hinzufügen.
  3. Führen Sie im Bereich Regel für eingehenden Traffic die folgenden Schritte aus:
    1. Wählen Sie für FROM-Attribute die folgenden FROM-Attribute des API-Clients aus:
      1. Identität: Beliebige Identität
      2. Quelle: Zugriffsebene
      3. Zugriffsebene: gce-subnet-1
    2. Wählen Sie für TO-Attribute die folgenden TO-Attribute von Google Cloud-Diensten und ‑Ressourcen aus:
      1. Projekt: Alle Projekte
      2. Dienste: Alle Dienste

Richtlinie für ausgehenden Traffic konfigurieren

Da das Hostprojekt das mit ph-fm-svc-project-1 freigegebene Subnetz besitzt, ist eine Egress-Regel erforderlich, um die bidirektionale Kommunikation zwischen dem Dienstprojekt und seinem Hostprojekt zu ermöglichen, wenn Compute-Ressourcen im Dienstprojekt erstellt werden.

  1. Klicken Sie im linken Menü auf Richtlinie für ausgehenden Traffic.
  2. Klicken Sie auf Regel hinzufügen.
  3. Führen Sie im Bereich Regel für ausgehenden Traffic die folgenden Schritte aus:
    1. Wählen Sie für FROM-Attribute die folgenden FROM-Attribute des API-Clients aus:
      1. Identität: Beliebige Identität
    2. Wählen Sie für TO-Attribute die folgenden TO-Attribute von Google Cloud-Diensten und ‑Ressourcen aus:
      1. Projekt: Ausgewählte Projekte
      2. Projekt hinzufügen: aiml-host-project
      3. Dienste: Ausgewählte Dienste
      4. Ausgewählte Dienste: Compute Engine API
      5. Methoden: Alle Methoden

Perimeter erstellen

Nachdem Sie die vorherigen Konfigurationsschritte ausgeführt haben, klicken Sie auf Perimeter erstellen, um den Perimeter zu erstellen.

Konfigurationsschritte für low-trust-svc-perimeter

Konfigurationstyp für den neuen Perimeter auswählen

  1. Klicken Sie im Navigationsmenü der Google Cloud Console auf Sicherheit und dann auf VPC Service Controls.

    Gehen Sie zu Sicherheit.

  2. Wählen Sie Ihre Organisation, Ihren Ordner oder Ihr Projekt aus, wenn Sie dazu aufgefordert werden.

  3. Klicken Sie auf der Seite VPC Service Controls auf Probelaufmodus.

  4. Klicken Sie auf Neuer Perimeter.

  5. Geben Sie auf dem Tab Neuer VPC-Dienstperimeter im Feld Perimetername einen Namen für den Perimeter ein, z. B. low-trust-svc-perimeter.

    Ein Perimetername darf maximal 50 Zeichen lang sein und muss mit einem Buchstaben beginnen. Er darf nur lateinische ASCII-Buchstaben (a-z, A-Z), Zahlen (0-9) und Unterstriche (_) enthalten. Beim Perimeternamen wird zwischen Groß- und Kleinschreibung unterschieden und er muss innerhalb einer Zugriffsrichtlinie eindeutig sein.

  6. Übernehmen Sie die Standardeinstellungen für den Perimeter.

Zu schützende Ressourcen auswählen

  1. Klicken Sie auf Zu schützende Ressourcen.
  2. So fügen Sie Projekte oder VPC-Netzwerke hinzu, die Sie im Perimeter sichern möchten:
    1. Klicken Sie auf Ressourcen hinzufügen.
    2. Wenn Sie dem Perimeter Projekte hinzufügen möchten, klicken Sie im Bereich Ressourcen hinzufügen auf Projekt hinzufügen.
      1. Wählen Sie das Projekt aus, das Sie hinzufügen möchten. Wählen Sie für diese Referenzarchitektur Folgendes aus:
        • ph-fm-svc-project-2
        • ph-fm-svc-project-3
      2. Klicken Sie auf Ausgewählte Ressourcen hinzufügen. Die hinzugefügten Projekte werden im Bereich Projekte angezeigt.

Eingeschränkte Dienste auswählen

In dieser Referenzarchitektur ist der Umfang der eingeschränkten APIs begrenzt, sodass nur die für Gemini erforderlichen APIs aktiviert werden. Wir empfehlen jedoch, beim Erstellen eines Perimeters alle Dienste einzuschränken, um das Risiko der Daten-Exfiltration aus Google Cloud -Diensten zu verringern.

So wählen Sie die Dienste aus, die Sie im Perimeter sichern möchten:

  1. Klicken Sie auf Eingeschränkte Dienste.
  2. Klicken Sie im Bereich Eingeschränkte Dienste auf Dienste hinzufügen.
  3. Wählen Sie im Dialogfeld Geben Sie Dienste an, die eingeschränkt werden sollen die Compute Engine API aus.
  4. Klicken Sie auf Compute Engine API hinzufügen.
  5. Klicken Sie im Bereich Eingeschränkte Dienste auf Dienste hinzufügen.
  6. Wählen Sie im Dialogfeld Geben Sie Dienste an, die eingeschränkt werden sollen die Agent Platform API aus.
  7. Klicken Sie auf Agent Platform API hinzufügen.

Optional: Über VPC zugängliche Dienste auswählen

Die Einstellung Über VPC zugängliche Dienste beschränkt die Gruppe von Diensten, die von Netzwerkendpunkten in Ihrem Dienstperimeter zugänglich sind. In dieser Referenzarchitektur behalten wir die Standardeinstellung Alle Dienste bei.

Optional: Zugriffsebene auswählen

Wenn Sie im vorherigen Abschnitt eine CIDR-Zugriffsebene für das Unternehmen erstellt haben, gehen Sie so vor, um den Zugriff auf geschützte Ressourcen von außerhalb des Perimeters zuzulassen:

  1. Klicken Sie auf Zugriffsebenen.
  2. Klicken Sie auf das Kästchen Zugriffsebene auswählen.

    Sie können Zugriffsebenen auch hinzufügen, nachdem ein Perimeter erstellt wurde.

  3. Klicken Sie das Kästchen für die Zugriffsebene an. In dieser Referenzarchitektur ist das corp-public-block.

Ingress-Richtlinie konfigurieren

Da das Subnetz, das für ph-fm-svc-project-2 und ph-fm-svc-project-3 freigegeben ist, zum Hostprojekt gehört, ist eine Ingress-Regel erforderlich, um diesen Subnetzen Zugriff auf den Perimeter des Dienstprojekts über das Hostprojekt zu gewähren. Dadurch können die Compute-Instanzen dieser Dienstprojekte auf den verwalteten Dienst in ph-fm-svc-project-2 und ph-fm-svc-project-3 zugreifen.

  1. Klicken Sie im linken Menü auf Richtlinie für eingehenden Traffic.
  2. Klicken Sie auf Regel hinzufügen.
  3. Führen Sie im Bereich Regel für eingehenden Traffic die folgenden Schritte aus:
    1. Wählen Sie für FROM-Attribute die folgenden FROM-Attribute des API-Clients aus:
      1. Identität: Beliebige Identität
      2. Quelle: Zugriffsebene
      3. Zugriffsebene: gce-subnet-2, gce-subnet-3
    2. Wählen Sie für TO-Attribute die folgenden TO-Attribute von Google Cloud-Diensten und ‑Ressourcen aus:
      1. Projekt: Alle Projekte
      2. Dienste: Alle Dienste

Richtlinie für ausgehenden Traffic konfigurieren

Da das Hostprojekt das mit ph-fm-svc-project-2 und ph-fm-svc-project-3 freigegebene Subnetz besitzt, ist eine Egress-Regel erforderlich, um die bidirektionale Kommunikation zwischen den Dienstprojekten und ihrem Hostprojekt zu ermöglichen, wenn Compute-Ressourcen in den Dienstprojekten erstellt werden.

  1. Klicken Sie im linken Menü auf Richtlinie für ausgehenden Traffic.
  2. Klicken Sie auf Regel hinzufügen.
  3. Führen Sie im Bereich Regel für ausgehenden Traffic die folgenden Schritte aus:
    1. Wählen Sie für FROM-Attribute die folgenden FROM-Attribute des API-Clients aus:
      1. Identität: Beliebige Identität
    2. Wählen Sie für TO-Attribute die folgenden TO-Attribute von Google Cloud-Diensten und ‑Ressourcen aus:
      1. Projekt: Ausgewählte Projekte
      2. Projekt hinzufügen: aiml-host-project
      3. Dienste: Ausgewählte Dienste
      4. Ausgewählte Dienste: Compute Engine API
      5. Methoden: Alle Methoden

Perimeter erstellen

Nachdem Sie die vorherigen Konfigurationsschritte ausgeführt haben, klicken Sie auf Perimeter erstellen, um den Perimeter zu erstellen.

Netzwerk konfigurieren

Private Service Connect-Endpunkt für den Zugriff auf Google APIs verwenden

Private Service Connect für den Zugriff auf Google APIs ist eine Alternative zum privater Google-Zugriff oder zu den öffentlichen Domainnamen für Google APIs. In diesem Fall ist Google der Producer.

Mit Private Service Connect haben Sie folgende Möglichkeiten:

  • Eine oder mehrere interne IP-Adressen für den Zugriff auf Google APIs für verschiedene Anwendungsfälle erstellen.
  • Leiten Sie Ihren lokalen Traffic beim Zugreifen auf Google APIs an bestimmte IP-Adressen und Regionen weiter.
  • Erstellen Sie einen benutzerdefinierten DNS-Namen für den Endpunkt, der zum Auflösen von Google APIs verwendet werden soll.

In der Referenzarchitektur wird ein Private Service Connect-Google API-Endpunkt namens restricted mit der IP-Adresse 192.168.10.2 mit den Ziel-VPC Service Controls bereitgestellt, der als virtuelle IP (VIP) für den Zugriff auf eingeschränkte Dienste verwendet wird, die im VPC Service Controls-Perimeter konfiguriert sind. Der Private Service Connect-Endpunkt wird im Hostprojekt aiml-host-project bereitgestellt.

Über Compute Engine-Instanzen auf Gemini Pro zugreifen

Wenn Sie einen Private Service Connect-Endpunkt erstellen, erstellt Service Directory DNS-Einträge in einer privaten Zonep.googleapis.com. Die Einträge verweisen auf die Endpunkt-IP-Adresse und verwenden das Format SERVICE-ENDPOINT.p.googleapis.com, das dem voll qualifizierten Domainnamen entspricht, der für den Zugriff auf die Agent Platform API verwendet wird: LOCATION-aiplatform-restricted.p.googleapis.com.

Netzwerkkonfiguration validieren

Die Compute Engine-Instanzen, die in den Dienstprojekten bereitgestellt werden, werden mit dem folgenden Verfahren aktualisiert, damit die Agent Platform API den benutzerdefinierten voll qualifizierten Domainnamen verwendet und die Validierung durchgeführt wird.

  1. Initialisieren Sie Ihre Python-Umgebungsvariablen so:

    PROJECT_ID="ph-fm-svc-project-1"
    LOCATION_ID="us-central1"
    API_ENDPOINT="us-central1-aiplatform-restricted.p.googleapis.com"
    MODEL_ID="gemini-2.0-flash-exp"
    GENERATE_CONTENT_API="streamGenerateContent"
    
  2. Erstellen Sie mit einem Texteditor eine request.json-Datei mit dem folgenden JSON-Code:

    {
      "contents": [
        {
          "role": "user",
          "parts": [
            {
              "text": "what weight more 1kg feathers vs 1kg stones"
            }
          ]
        }
      ],
      "generationConfig": {
        "temperature": 1,
        "maxOutputTokens": 8192,
        "topP": 0.95,
        "seed": 0
      },
      "safetySettings": [
        {
          "category": "HARM_CATEGORY_HATE_SPEECH",
          "threshold": "OFF"
        },
        {
          "category": "HARM_CATEGORY_DANGEROUS_CONTENT",
          "threshold": "OFF"
        },
        {
          "category": "HARM_CATEGORY_SEXUALLY_EXPLICIT",
          "threshold": "OFF"
        },
        {
          "category": "HARM_CATEGORY_HARASSMENT",
          "threshold": "OFF"
        }
      ]
    }
    
  3. Stellen Sie die folgende cURL-Anfrage an die Gemini Enterprise Agent Platform Gemini API:

    curl \
    -X POST \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    "https://${API_ENDPOINT}/v1/projects/${PROJECT_ID}/locations/${LOCATION_ID}/publishers/google/models/${MODEL_ID}:${GENERATE_CONTENT_API}" -d '@request.json'
    

Perimeter im Probelaufmodus validieren

In dieser Referenzarchitektur ist der Dienstperimeter im Probelaufmodus konfiguriert. So können Sie die Auswirkungen der Zugriffsrichtlinie testen, ohne sie zu erzwingen. So können Sie sehen, wie sich Ihre Richtlinien auf Ihre Umgebung auswirken würden, wenn sie aktiv wären, ohne dass legitimer Traffic beeinträchtigt wird.

Im YouTube-Video VPC Service Controls dry run logging erfahren Sie, wie Sie Ihren Perimeter im Probelaufmodus validieren.

Nachdem Sie Ihren Perimeter im Probelaufmodus validiert haben, stellen Sie ihn auf den erzwungenen Modus um.