Sicherheits-Blueprint: PCI in GKE

Last reviewed 2023-12-06 UTC

Der Blueprint PCI in Google Kubernetes Engine enthält eine Reihe von Terraform-Konfigurationen und -Skripts, die zeigen, wie eine PCI-Umgebung in Google Cloud gestartet wird. Der wichtigste Teil dieses Blueprints ist die Anwendung Online Boutique, mit der Nutzer Artikel suchen, sie in den Einkaufswagen legen und dann kaufen können.

Dieser Blueprint wurde für die Payment Card Industry Data Security Standard (PCI DSS) Version 3.2.1 entwickelt. Mit dem Blueprint können Sie Arbeitslasten in GKE bereitstellen, die die Wiederholbarkeit, Unterstützung und Sicherheit des PCI-DSS entsprechen.

Architektur

Projektübersicht

In diesem Blueprint starten Sie eine Umgebung für Karteninhaberdaten (Cardholder Data Environment, CDE) in Google Cloud, die die folgende Ressourcenhierarchie enthält:

  • Eine Unternehmensressource.
  • Eine Ordnerressource. Ordnerressourcen bieten einen Gruppierungsmechanismus und Isolationsgrenzen zwischen Projekten.
  • Projektressourcen. Sie stellen die folgenden Google Cloud-Projekte bereit:

    • Netzwerk: Das Hostprojekt für die freigegebene VPC.
    • Management: Ein Projekt, das die Logging- und Monitoring-Infrastruktur wie Cloud Logging enthält.
    • In-Scope: Ein Projekt, das die Ressourcen innerhalb des Geltungsbereichs enthält. In dieser Lösung besteht das Projekt aus einem GKE-Cluster, der für die Ausführung der Anwendungen innerhalb des Geltungsbereichs vorgesehen ist. Im Beispiel sind dies die Frontend-, Zahlungs- und Checkout-Dienste.
    • Out-of-Scope: Ein Projekt, das die Ressourcen außerhalb des Geltungsbereichs enthält. In der dargestellten Lösung ist dies ein GKE-Cluster, der für die Ausführung der restlichen Dienste entwickelt wurde.

Projektübersicht

Anwendung und Projekte

Das folgende Diagramm veranschaulicht die CDE-Grenze in Google Cloud und welche Projekte im Geltungsbereich Ihrer PCI-Bewertung der Mikrodienst-Demoanwendung liegen. Beim Erstellen Ihrer Umgebung verwenden Sie eine Darstellung wie diese, um Google Cloud über Ressourcen zu informieren, die in Ihren PCI-Grenzbereich hinein- und hinausgehen.

Der mit 1 gekennzeichnete Pfad zeigt Log-Daten von Kubernetes-Clustern zu Cloud Logging.

Bereitstellung von Anwendungen

Netzwerk-Layout

Dieses Diagramm veranschaulicht die Netzwerk- und Subnetzdetails für jedes Projekt. Es dokumentiert den Datenfluss zwischen Projekten sowie in die CDE und aus der CDE.

Netzwerk-Layout

Verschlüsselter Datenverkehr

Dieses Diagramm veranschaulicht den verschlüsselten Traffic, der über die PCI-Grenze hinein- und hinausfließt:

  1. TLS-verschlüsselter (HTTPS-)Traffic von außerhalb der VPC wird an den öffentlichen Load-Balancer innerhalb des Bereichs weitergeleitet.
  2. TLS-verschlüsselter Traffic zwischen Kubernetes-Clusterknoten innerhalb des Bereichs und dem Cluster außerhalb wird an interne Load-Balancer geleitet.
  3. Der Traffic von den internen Load-Balancern zum Cluster außerhalb des Gültigkeitsbereichs wird mithilfe von Istio mit mTLS verschlüsselt.
  4. Die Kommunikation innerhalb jedes Clusters wird mithilfe von Istio mit mTLS verschlüsselt.

Verschlüsselter Traffic

Compliance-Zuordnung

Der in diesem Dokument beschriebene Blueprint deckt eine Reihe von Anforderungen für PCI-DSS-Compliance ab. In der Tabelle in diesem Abschnitt sind einige dieser Anforderungen aufgeführt.

Die Elemente in der folgenden Tabelle umfassen nicht alle Anforderungen. Einige Anforderungen werden durch die Google Cloud-Infrastruktur im Rahmen der von Ihnen und Google geteilten Verantwortung erfüllt. Die Einhaltung anderer Anforderungen muss von Ihnen sichergestellt werden. Eine ausführliche Erläuterung des Modells der geteilten Verantwortung finden Sie im Google Cloud-Blog unter Exploring container security: the shared responsibility model in GKE.

Die Zahlen in Klammern beziehen sich auf Abschnitte aus dem Datensicherheitsstandard der Zahlungskartenbranche (Payment Card Industry Data Security Standard, PCI DSS). Sie können das Dokument auf der Webseite des PCI Security Standards Council in der Dokumentbibliothek herunterladen.

Anforderung Abschnitt Beschreibung
Segmentierung und Absicherung der Grenzen implementieren 1.3.2, 1.3.4 Dieser Blueprint unterstützt Sie bei der Implementierung einer logischen Segmentierung mithilfe von Google Cloud-Projekten. Durch die Segmentierung können Sie eine Grenze für Ihre PCI-Bewertung definieren. Dieser Blueprint führt Istio in Google Kubernetes Engine als Add-on aus, mit dem Sie ein Service Mesh um den GKE-Cluster erstellen können, das alle benötigten Komponenten enthält. Außerdem erstellt der Blueprint über eine VPC einen Sicherheitsbereich um alle Google Cloud-Projekte, die PCI-relevant sind.
Zugriff auf Google Cloud-Ressourcen mit geringstmöglicher Berechtigung konfigurieren 7.1, 7.2 Dieser Blueprint unterstützt Sie bei der Implementierung einer rollenbasierten Zugriffssteuerung, um zu verwalten, wer Zugriff auf Google Cloud-Ressourcen hat. Der Blueprint implementiert außerdem GKE-spezifische Zugriffssteuerungen wie rollenbasierte Zugriffssteuerung (role-based access control, RBAC) und Namespaces, um den Zugriff auf Clusterressourcen zu beschränken.
Richtlinien auf Organisationsebene festlegen   Mit diesem Blueprint erstellen Sie Richtlinien, die für Ihre Organisationsressource in Google Cloud gelten, wie z. B.:
Aufgabentrennung durch freigegebene VPC erzwingen 7.1.2, 7.1.3 Dieser Blueprint verwendet eine freigegebene VPC für die Verbindungen und eine getrennte Netzwerksteuerung, um die Aufgabentrennung zu erzwingen.
Die Sicherheit Ihres Clusters erhöhen 2.2, 2.2.5 Die GKE-Cluster in diesem Blueprint werden gehärtet, wie im Leitfaden zum Härten von Google Kubernetes Engine beschrieben.

Diese Liste stellt nur einen Teil der in diesem Blueprint implementierten Sicherheitsfunktionen dar, die PCI-DSS-Anforderungen erfüllen können. Eine vollständige Liste dieser Anforderungen finden Sie im Dokument PCI-DSS-Anforderungen (PDF) auf GitHub.

Bereitstellbare Assets

Das Repository Blueprint: PCI und GKE auf GitHub enthält eine Reihe von Terraform-Konfigurationen und -Skripts, die zeigen, wie eine PCI-Umgebung in Google Cloud gestartet wird. Das Projekt PCI in GKE stellt auch Google Cloud-Dienste, -Tools und -Projekte vor, die nützlich sind, um Ihre eigene Google Cloud PCI-Umgebung einzurichten.

Häufig gestellte Fragen

Ressourcen

  • PCI-DSS-Compliance in Google Cloud Dieser Leitfaden hilft Ihnen dabei, Probleme zu lösen, die nur bei GKE-Anwendungen (Google Kubernetes Engine) auftreten, wenn Sie Kundenverantwortlichkeiten für PCI-DSS-Anforderungen implementieren.