VPC Service Controls verwenden

VPC Service Controls ist ein Google Cloud Feature, mit dem Sie einen Dienstperimeter einrichten können, der vor Daten-Exfiltration schützt.

VPC Service Controls in Developer Connect schützt nicht vor möglicher Exfiltration zu externen Quellcodeverwaltungssystemen. In dieser Anleitung werden weitere Steuerelemente beschrieben, die benutzerdefinierte Organisationsrichtlinien verwenden, um diese Szenarien zu verhindern. SCMSs

Weitere Informationen zur Verwendung von VPC Service Controls finden Sie unter Dienstperimeter mit VPC Service Controls einrichten.

  • Erstellen Sie eine benutzerdefinierte Organisationsrichtlinie, die einschränkt, zu welchen Ressourcen Ihre Entwickler Verbindungen herstellen können.

  • Erstellen Sie eine benutzerdefinierte Organisationsrichtlinie, mit der Ihre Entwickler Verbindungen nur über eine bestimmte Service Directory-Ressource erstellen und aktualisieren können.

  • Einschränkungen für Developer Connect-Statistiken

Hinweis

Wenn Sie die Befehlszeilenbeispiele in dieser Anleitung verwenden möchten, installieren und konfigurieren Sie die Google Cloud CLI.

Erforderliche Rollen

Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Organization Policy Administrator (roles/orgpolicy.policyAdmin) für die Organisationsressource zu gewähren, um die Berechtigungen zu erhalten, die Sie zum Erstellen oder Bearbeiten einer benutzerdefinierten Organisationsrichtlinie 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.

Einschränkung erstellen, um die SCMSs zu begrenzen, zu denen Ihr Team Verbindungen herstellen kann

Eine Möglichkeit, die Möglichkeit einer Daten-Exfiltration zu einem SCMS zu verringern, besteht darin, die SCMSs zu begrenzen, die für Verbindungen zulässig sind. Sie können eine benutzerdefinierte Organisationsrichtlinie erstellen, die Verbindungen zu einem oder mehreren angegebenen SCMSs zulässt.

Die folgende Organisationsrichtlinie beschränkt Repository-Verbindungen auf Verbindungen zu GitHub Enterprise:

name: organizations/ORGANIZATION_ID/customConstraints/CONSTRAINT_NAME
resourceTypes:
- developerconnect.googleapis.com/Connection
methodTypes:
- CREATE
- UPDATE
condition: |
  resource.githubEnterpriseConfig.hostUri=="https://github.mycompany.net"
actionType: ALLOW
displayName: Connection GitHub Enterprise Host Constraint
description: |
  Allows creation/update of Developer Connect connections only to GitHub Enterprise host github.mycompany.net

Einschränkung erstellen, um Verbindungen über Service Directory zu erzwingen

Sie können die Möglichkeit einer Daten-Exfiltration verringern, indem Sie eine benutzerdefinierte Organisationsrichtlinie erstellen, die Verbindungen nur zu einem bestimmten Service Directory-Endpunkt zulässt.

Die folgende Organisationsrichtlinie lässt nur Verbindungen zu einem bestimmten Service Directory-Endpunkt zu:

name: organizations/ORGANIZATION_ID/customConstraints/CONSTRAINT_NAME
resourceTypes:
- developerconnect.googleapis.com/Connection
methodTypes:
- CREATE
- UPDATE
condition: |
  resource.gitlabEnterpriseConfig.serviceDirectoryConfig.service=="projects/my-project/locations/us-central1/namespaces/ns/services/myendpoint"
actionType: ALLOW
displayName: Connection GitLab Enterprise Service Directory endpoint
description: |
  Allows creation/update of Developer Connect connections only through a specific Service Directory resource

Einschränkungen für Developer Connect-Statistiken

Wenn Sie Developer Connect-Statistiken (InsightsConfig) mit VPC Service Controls verwenden, beachten Sie die folgenden bekannten Einschränkungen und Konfigurationsanforderungen:

  • Abhängigkeit von der App Hub API: Developer Connect-Statistiken sind von der App Hub API abhängig. Bei Anwendungen, die eine Ordnerverwaltungsgrenze verwenden, werden VPC Service Controls-Einschränkungen auf Ordnerebene nicht auf untergeordnete Projekte angewendet. App Hub kann Dienste und Arbeitslasten für alle untergeordneten Projekte ermitteln, auch wenn sie sich nicht im selben Perimeter wie das Verwaltungsprojekt befinden.

  • Ressourcenmetadaten über Anwendungstopologie verfügbar: Wenn Sie Developer Connect-Statistiken verwenden, werden erweiterte Ressourcenmetadaten über Anwendungstopologie verfügbar gemacht, sofern die App Topology API ebenfalls aktiviert ist. Wir empfehlen, sowohl die Developer Connect-Statistiken API (developerconnect.googleapis.com) als auch die App Topology API(apptopology.googleapis.com) in Perimetern einzuschränken, wenn Sie beide Dienste verwenden.

  • App Hub-Anwendungsfeeds und IAM-Zugriffssteuerung: Wenn eine InsightsConfig Statistiken für eine App Hub-Anwendung erfasst, Developer Connect erstellt Cloud Asset Inventory Echtzeitfeeds im Verwaltungsordner oder in der Projektgrenze der App Hub-Anwendung. Daten aus diesen Feeds werden direkt an den Developer Connect-Dienst gesendet, aber nur von Developer Connect-Dienstagenten verwendet, die Asset-Metadaten aus diesen Ordnern oder Projekten lesen dürfen. Zusätzlich zur Verwendung von IAM-Rollen, um einzuschränken, welchen Developer Connect-Dienstagenten dieser Zugriff gewährt wird, muss sich das Projekt, in dem sich die InsightsConfig-Ressource befindet, und das Projekt, aus dem Daten veröffentlicht werden, im selben VPC Service Controls-Perimeter befinden. Alternativ müssen konfigurierte Regeln für eingehenden und ausgehenden Traffic für den Developer Connect-Dienstagenten hinzugefügt werden, um den Zugriff zu ermöglichen.

  • Feeds auf Projektebene und IAM-Zugriffssteuerung: Wenn eine InsightsConfig auf ein Projekt beschränkt ist, erstellt Developer Connect Cloud Asset Inventory Echtzeitfeeds direkt in den Zielprojekten. Daten aus diesen Feeds werden direkt an den Developer Connect-Dienst gesendet, aber nur von Developer Connect-Dienstagenten verwendet, die Asset-Metadaten aus diesen Projekten lesen dürfen. Zusätzlich zur Verwendung von IAM-Rollen, um einzuschränken, welchen Developer Connect-Dienstagenten dieser Zugriff gewährt wird, muss sich das Projekt, in dem sich die InsightsConfig-Ressource befindet, und das Projekt, aus dem Daten veröffentlicht werden, im selben VPC Service Controls-Perimeter befinden. Alternativ müssen konfigurierte Regeln für eingehenden und ausgehenden Traffic für den Developer Connect-Dienstagenten hinzugefügt werden, um den Zugriff zu ermöglichen.

  • Perimeter-Abstimmung für Artefaktmetadaten und Provenienz: Das Projekt , in dem sich die InsightsConfig Ressource befindet, und alle Projekte, die Artefaktmetadaten oder die Provenienz enthalten, müssen sich im selben VPC Service Controls -Perimeter befinden. Alternativ müssen konfigurierte Regeln für eingehenden und ausgehenden Traffic für den Developer Connect-Dienstagenten hinzugefügt werden, um den Zugriff zu ermöglichen.

  • Perimeter-Abstimmung für die Bereitstellungsprotokollierung: Das Projekt, in dem sich die InsightsConfig Ressource befindet, und alle Projekte, die Bereitstellungen enthalten, müssen sich im selben VPC Service Controls-Perimeter befinden. Alternativ müssen konfigurierte Regeln für eingehenden und ausgehenden Traffic für den Developer Connect-Dienstagenten hinzugefügt werden, um den Zugriff zu ermöglichen.

Nächste Schritte