Confidential Space – Übersicht

Confidential Space bietet eine isolierte Umgebung für die Verarbeitung sensibler Daten von mehreren Parteien, sodass die Inhaber dieser Daten sie vertraulich behandeln können. Sensible Daten können personenidentifizierbare Informationen (PII), geschützte Gesundheitsdaten (Protected Health Information, PHI), geistiges Eigentum, kryptografische Secrets, Modelle für maschinelles Lernen (ML) oder Interaktionen mit großen Sprachmodellen (LLMs) enthalten.

Sie können Confidential Space verwenden, um vertrauliche Daten zu verarbeiten, die nur für die ursprünglichen Inhaber und eine einvernehmlich vereinbarte Arbeitslast sichtbar sind. Alternativ können Sie damit Endkunden einen besseren Datenschutz bieten, da der Betreiber oder Inhaber einer Confidential Space-Umgebung nicht auf die verarbeiteten Daten zugreifen kann.

Confidential Space ist eine vertrauenswürdige Ausführungsumgebung (Trusted Execution Environment, TEE), die verwendet werden kann, um Ihre Secrets nur für autorisierte Arbeitslasten freizugeben. Ein Attestierungsprozess und ein gehärtetes Betriebssystem-Image schützen die Arbeitslast und die Daten, die die Arbeitslast verarbeitet, vor einem Operator.

Weitere Informationen zu den Anwendungsfällen und dem Sicherheitsmodell von Confidential Space finden Sie unter Sicherheit in Confidential Space – Übersicht.

Confidential Space-Komponenten

Ein Confidential Space-System verfügt über drei Kernkomponenten:

  • Arbeitslast: Ein containerisiertes Image mit Code, der die geschützten Ressourcen verarbeitet. Es wird auf einem Confidential Space-Image ausgeführt, einem gehärteten Betriebssystem, das auf Container-Optimized OS basiert. Dies wird wiederum auf einer Confidential VM ausgeführt, die Hardwareisolation und Remote-Attestierungsfunktionen bietet. Die Arbeitslast befindet sich in der Regel in einem anderen Projekt als die geschützten Ressourcen.

  • Ein Attestierungsdienst: Ein Remote-Verifizierer, der Attestierungsnachweise von einer Entität in Form von Identitätstokens zurückgibt. Die Tokens enthalten Identifizierungsattribute für die Arbeitslast. Confidential Space unterstützt die folgenden Attestierungsdienste:

    • Google Cloud Attestation: Unterstützt AMD SEV- und Intel TDX-VM-Instanzen. Wird in derselben Region ausgeführt wie der Arbeitslast.

    • Intel Trust Authority: Unterstützt Intel TDX-VM-Instanzen. Wird in einer von Ihnen definierten Intel Trust Authority-Region ausgeführt.

  • Geschützte Ressourcen: Verwaltete Ressourcen, die durch ein Authentifizierungs- und Autorisierungssystem geschützt sind. Wenn sich die Ressourcen in Google Cloudbefinden, können sie verwaltete Cloud-Ressourcen wie Cloud KMS-Schlüssel (Cloud Key Management Service) oder Cloud Storage-Buckets sein. Wenn sich die Ressourcen nicht in Google Cloud befinden(z. B. in einer lokalen Umgebung oder in einer anderen Cloud), kann es sich um beliebige Ressourcen handeln.

Confidential Space-Rollen

Die Komponenten in einem Confidential Space-System werden von Personen mit drei verschiedenen Rollen verwaltet:

  • Datenmitbearbeiter: Die Personen oder Organisationen, denen die geschützten Ressourcen gehören, die von der Arbeitslast verarbeitet werden. Datenmitbearbeiter können auf ihre eigenen Daten zugreifen, Berechtigungen für diese Daten festlegen und je nach Ausgabe des Arbeitslastprozesses auf Ergebnisse zugreifen, die auf diesen Daten basieren.

    Datenmitarbeiter können nicht auf die Daten der anderen zugreifen oder den Arbeitslastcode ändern.

    Weitere Informationen zur Rolle von Datenmitarbeitern finden Sie unter Zugriff auf vertrauliche Ressourcen erstellen und gewähren.

  • Workload-Autor: Die Person, die die Anwendung erstellt, mit der auf die vertraulichen Daten zugegriffen und diese verarbeitet werden. Sie fügt die Anwendung einem containerisierten Image hinzu, z. B. mit Docker, und lädt das Image in ein Repository wie Artifact Registry hoch.

    Der Autor der Arbeitslast hat keinen Zugriff auf die Daten oder die Ergebnisse und kann den Zugriff darauf auch nicht steuern.

    Weitere Informationen zur Rolle des Workload-Autors finden Sie unter Workloads erstellen und anpassen.

  • Arbeitslastoperator: Die Person, die die Arbeitslast ausführt. Der Arbeitslastoperator hat in der Regel uneingeschränkte Administratorberechtigungen für das Projekt, in dem er die Arbeitslast ausführt. Sie können beispielsweise Ressourcen in ihrem Projekt verwalten, z. B. Compute Engine-Instanzen, Laufwerke und Netzwerkregeln, und mit jederGoogle Cloud API interagieren, die darauf reagiert.

    Der Arbeitslastoperator hat keinen Zugriff auf die Daten und kann den Zugriff darauf auch nicht steuern. Sie können den Arbeitslastcode oder die Ausführungsumgebung nicht beeinflussen oder ändern.

    Weitere Informationen zur Rolle des Arbeitslastoperators finden Sie unter Arbeitslasten bereitstellen.

Eine Person kann eine oder mehrere dieser Rollen übernehmen. Für maximale Sicherheit unterstützt Confidential Space ein Vertrauensmodell, bei dem Datenmitarbeiter, Arbeitslastautoren und Arbeitslastoperatoren voneinander getrennte, sich gegenseitig nicht vertrauende Parteien sind. Alle Rollen müssen zusammenarbeiten, um die benötigten Ergebnisse zu erzielen.

Beispiel für einen Confidential Space-Ablauf

Confidential Space nutzt mehrere Google Cloud Dienste, um vertrauliche Informationen vertraulich zu verarbeiten. Das Einrichten eines Confidential Space könnte in etwa so aussehen:

  1. Mehrere Datenpartner speichern verschlüsselte vertrauliche Daten in ihren eigenen isolierten Google Cloud Projekten, oft in verschiedenen Organisationen. Sie möchten diese Daten vergleichen und verarbeiten, ohne sie einander oder externen Dritten preiszugeben. Die verschlüsselten Daten können sich in Cloud Storage, BigQuery oder einem anderen Dienst befinden.

  2. Die Datenmitarbeiter erstellen Mock-Daten, die nicht vertraulich sind, für einen Test-Workload. Diese Daten können sich in verschiedenen Dateien oder an einem anderen Ort wie einem separaten Cloud Storage-Bucket befinden.

  3. Die Datenpartner erstellen einen Workload Identity-Pool (WIP). Später kann eine Arbeitslast, die im separaten, isolierten Projekt eines Arbeitslastoperators ausgeführt wird, mit diesem WIP auf die vertraulichen Daten der Mitbearbeiter zugreifen.

  4. Der Autor der Arbeitslast schreibt Code zum Verarbeiten der vertraulichen Daten. In einem Projekt, das von den Datenmitarbeitern und dem Arbeitslastoperator getrennt ist, erstellen sie mit Docker ein Container-Image und laden es in die Artifact Registry hoch.

  5. Der Arbeitslastoperator erstellt ein Dienstkonto in einem isolierten Projekt, das Lesezugriff auf den Speicherort der verschlüsselten vertraulichen Daten der Datenmitarbeiter und Schreibzugriff auf einen Speicherort (z. B. einen Cloud Storage-Bucket) hat, um das Ergebnis der Verarbeitung der entschlüsselten Daten auszugeben. Später wird dieses Dienstkonto an eine Confidential VM angehängt, auf der die Arbeitslast ausgeführt wird.

  6. Die Datenmitarbeiter fügen ihren Workload Identity-Pools einen Anbieter hinzu. Sie fügen dem Anbieter Details hinzu, z. B. den zu verwendenden Attestierungsservice, Attributzuordnungen zum Erstellen eines Prüfpfads in Protokollen und Attributbedingungen. Diese Details bestätigen die Assertionen des Confidential Space-Images, des Arbeitslastcontainers und der Arbeitslast-VM-Instanz. Wenn die Arbeitslast diese Überprüfung besteht, darf sie auf die vertraulichen Daten zugreifen und sie entschlüsseln.

  7. Die Arbeitslast wird mit den nicht vertraulichen Daten getestet, indem eine Confidential VM-Instanz im Projekt des Arbeitslastoperators gestartet wird. Die VM basiert auf einer Debug-Version des Confidential Space-Image, in die die containerisierte Arbeitslast geladen wird.

    Nachdem die Attestierungen der VM überprüft wurden und die Arbeitslast die Bedingungen der Datenmitwirkenden erfüllt, darf das an die VM angehängte Dienstkonto auf die vertraulichen Daten zugreifen, sie verarbeiten und ein Ergebnis ausgeben.

  8. Nachdem Monitoring und Debugging abgeschlossen sind, wird die Arbeitslast für die Produktion aktualisiert. Die Datenbearbeiter aktualisieren und sperren ihre Arbeitslast-Identitätsanbieter bei Bedarf weiter und testen die Produktionsarbeitslast möglicherweise zuerst mit nicht vertraulichen Daten.

  9. Alle Parteien genehmigen die Produktionsarbeitslast und die Arbeit an vertraulichen Daten kann beginnen.

Voraussetzungen

Für Confidential Space ist Confidential VM erforderlich. Für Confidential VM-Instanzen muss AMD SEV, Intel TDX oder Intel TDX mit NVIDIA Confidential Computing als Confidential Computing-Technologie verwendet werden. Informationen zu Hardwarekonfigurationsoptionen und dazu, an welchen Standorten Confidential VM-Instanzen erstellt werden können, finden Sie unter Unterstützte Konfigurationen.

Nächste Schritte