Datenmitbearbeiter müssen die folgenden Ressourcen einrichten, damit eine Arbeitslast auf ihre vertraulichen Daten zugreifen kann:
Verschlüsselte Daten, die in Google Cloudgespeichert sind.
Einen Workload Identity-Pool (WIP) zum Autorisieren der Arbeitslast. Nachdem eine Arbeitslast von einem WIP autorisiert wurde, kann sie auf die vertraulichen Daten von Datenmitarbeitern zugreifen und diese verarbeiten.
Außerdem müssen Datenmitwirkende auswählen, wo die Ergebnisse der Confidential Space-Arbeitslast gespeichert werden und ob diese Ergebnisse für jeden Mitwirkenden eindeutig sind oder freigegeben werden. Sie können beispielsweise dasselbe Ergebnis in mehrere Cloud Storage-Buckets ausgeben, die den einzelnen Datenmitarbeitern gehören.
Verschlüsselte Daten speichern
Sie können jeden Google Cloud -Dienst, der Daten speichert, zum Hosten Ihrer vertraulichen Daten verwenden. Beispielsweise können Sie einen der folgenden Dienste verwenden:
Sie sollten dafür sorgen, dass diese Daten im Ruhezustand verschlüsselt sind, entweder mit integrierten Funktionen oder mit einem Dienst wie Cloud Key Management Service (Cloud KMS).
Arbeitslast mit einem WIP autorisieren
Ein WIP ist der Mechanismus, mit dem Confidential Space einer externen Arbeitslast ermöglicht, als föderierte Identität auf Ihre vertraulichen Daten zuzugreifen und damit zu arbeiten. Eine föderierte Identität ist eine externe Entität, die wie ein Hauptkonto in Ihrem eigenen Projekt behandelt wird. Sie können ihr IAM-Rollen zuweisen, um Zugriff auf bestimmte Ressourcen zu gewähren, oder die Identität von Dienstkonten übernehmen, um dasselbe zu tun.
Als Datenmitarbeiter richten Sie einen Anbieter in einem WIP ein, der die Regeln für Entitäten festlegt, die sich als föderierte Identität authentifizieren. Für Confidential Space müssen Sie in einem Anbieter Folgendes definieren:
Attestierungsdienst: Dieser Dienst prüft, ob die Arbeitslast eine Confidential VM-Instanz ist, und gibt schließlich ein OpenID Connect-Attestierungstoken (OIDC) an den WIP-Anbieter zurück. Der Arbeitslastoperator legt den verwendeten Attestierungsdienst fest. Dieser muss mit dem Attestierungsdienst übereinstimmen, der dem WIP-Anbieter hinzugefügt wurde, damit Zugriff gewährt wird.
Attributzuordnungen: Attribute in Zugriffstokens des Security Token Service, die Assertions zugeordnet sind, die von der authentifizierenden Entität erstellt wurden – in diesem Fall die VM-Instanz, auf der die Arbeitslast ausgeführt wird. Assertions werden von der VM-Instanz selbst, dem Confidential Space-Image und dem Arbeitslastcontainer erstellt und von der Arbeitslast an den WIP-Anbieter übergeben. Diese Attribute werden für Dinge wie Audit-Logs in Cloud Logging und zum Zuweisen von Rollen über IAM auf der Grundlage von Authentifizierungsentitäts-Assertions wie Workload-Image-Container-Digests verwendet. Weitere Informationen zu Attributzuordnungen
Eine Attestierungsrichtlinie: Eine Reihe von Bedingungen, die authentifizierende Entitäten erfüllen müssen, um Zugriff zu erhalten, basierend auf den von ihnen gemachten Zusicherungen.
Wenn eine Arbeitslast gestartet wird, sendet der Confidential Space Launcher seinen Attestierungsbericht an einen vom Arbeitslastoperator definierten Attestierungsdienst, der die Confidential VM-Instanz verifiziert und dann ein OIDC-Attestierungstoken zurückgibt. Dieses Token ist eine Stunde gültig und wird automatisch aktualisiert.
Das Attestierungstoken wird dann von der Arbeitslast an den WIP-Anbieter übergeben. Der Anbieter verwendet es, um zu prüfen, ob die Assertions die im Anbieter definierte Attestierungsrichtlinie erfüllen. Wenn ja, erhält die Arbeitslast Zugriff auf die vertraulichen Ressourcen.
Zugriff auf externe Arbeitslasten
Bevor Sie einen WIP und einen Anbieter einrichten, müssen Sie festlegen, wie die Arbeitslast auf Ihre Ressourcen zugreifen soll: direkter Ressourcenzugriff oder Identitätsübernahme des Dienstkontos.
Direkter Ressourcenzugriff
Wir empfehlen die Methode des direkten Ressourcenzugriffs für Arbeitslasten.
Bei dieser Methode wird eine föderierte Identität in einem WIP-Anbieter eingerichtet, der an die Assertions einer authentifizierenden Entität gebunden ist. So kann eine Arbeitslast basierend auf Attributen wie dem Container-Image-Digest der Arbeitslast autorisiert werden, direkt über IAM-Bindungen auf Ressourcen zuzugreifen.
Der direkte Ressourcenzugriff bietet folgende Vorteile:
Das Einrichten einer Confidential Space-Umgebung erfordert weniger Schritte, da Datenmitarbeiter keine Dienstkonten einrichten müssen, die von einem Arbeitslastdienstkonto imitiert werden können.
Die Arbeitslast darf nur auf bestimmte Ressourcen zugreifen, die von IAM festgelegt wurden. Diese Methode ist sicherer als die Identitätsübernahme des Dienstkontos, bei der Dienstkonten mit zu vielen Berechtigungen oder Identitätsübernahmerechte einem böswilligen Akteur mehr Zugriff als beabsichtigt gewähren könnten.
Jeder Ressourcenzugriff wird mit der föderierten Identität einer Arbeitslast-VM-Instanz protokolliert, anstatt mit der Identität eines Dienstkontos, die möglicherweise von mehreren Arbeitslasten gemeinsam genutzt wird. Die Identität einer Arbeitslast-VM-Instanz kann Details wie den Image-Digest eines Containers, die Projektnummer, von der aus die Arbeitslast ausgeführt wird, und die ID der VM-Instanz enthalten, auf der die Arbeitslast ausgeführt wird. Dies ermöglicht einen detaillierteren Audit-Trail.
Sie müssen das VM-Instanzattribut
selfLinknicht dem Attributgoogle.subjectin einem WIP-Anbieter zuordnen. Sehr langeselfLink-Werte können das 127-Byte-Limit dieses Attributs überschreiten, was dazu führt, dass die WIP-Anbieterauthentifizierung fehlschlägt.
Identitätsübernahme des Dienstkontos
Bei der Methode zur Identitätsübernahme des Dienstkontos richtet jeder Datenmitarbeiter ein Dienstkonto ein, um seine privaten Daten zu entschlüsseln, und hängt dieses Dienstkonto dann an seinen eigenen WIP an. Außerdem geben sie das Dienstkonto für die Arbeitslast in ihrem WIP-Anbieter an. Dadurch kann das Dienstkonto für die Arbeitslast die Identität der Dienstkonten der Datenmitarbeiter übernehmen, um deren vertrauliche Daten abzurufen und zu verarbeiten.
Die Identitätsübernahme des Dienstkontos sollte nur in den folgenden Szenarien verwendet werden:
Wenn Sie Image-Signaturen als Authentifizierungsdaten verwenden müssen, da die von Signaturen verwendete Syntax nicht mit Attributzuordnungen funktioniert.
Wenn Sie auf APIs zugreifen, die keine föderierten Identitäten unterstützen.
Die Methode zur Identitätsübernahme des Dienstkontos kann möglicherweise nicht bei einem WIP-Anbieter authentifiziert werden, wenn eine VM-Instanz ein sehr langes selfLink-Attribut hat. Das liegt daran, dass die sub-Anforderung im Attestierungstoken, die auf den Wert selfLink festgelegt ist, im WIP-Anbieter dem Attribut google.subject zugeordnet wird, das ein Limit von 127 Byte hat.
Wenn die selfLink-Werte der VM-Instanz 127 Byte überschreiten, müssen Sie Ihre VM-Instanzen umbenennen, um den selfLink-Wert zu verkürzen, oder stattdessen die Methode für den direkten Ressourcenzugriff verwenden.
WIP und Anbieter einrichten
Die Schritte zum Einrichten eines Anbieters hängen davon ab, ob Sie den direkten Ressourcenzugriff oder die Identitätsübernahme des Dienstkontos verwenden.
Direkter Ressourcenzugriff
Bei der Methode für den direkten Ressourcenzugriff werden ein WIP und ein Anbieter eingerichtet und dann IAM-Rollen basierend auf einem bestimmten Digest des Container-Images der Arbeitslast eingerichtet.
WIP und Anbieter einrichten
So richten Sie einen WIP und einen Anbieter ein:
Erstellen Sie den WIP:
gcloud iam workload-identity-pools create DATA_COLLABORATOR_POOL_NAME \ --location=globalErstellen Sie einen OIDC-Anbieter im WIP:
gcloud iam workload-identity-pools providers create-oidc attestation-verifier \ --location=global \ --workload-identity-pool=DATA_COLLABORATOR_POOL_NAME \ --issuer-uri="ISSUER_URI" \ --allowed-audiences="https://sts.googleapis.com" \ --attribute-mapping="google.subject=\"gcpcs::\"+assertion.submods.container.image_digest+\"::\"+assertion.submods.gce.project_number+\"::\"+assertion.submods.gce.instance_id,attribute.image_digest=assertion.submods.container.image_digest" \ --attribute-condition="assertion.swname == 'CONFIDENTIAL_SPACE' \ && 'STABLE' in assertion.submods.confidential_space.support_attributes"In diesem Beispiel werden die folgenden Werte verwendet:
Eine
issuer-uri, die dem von Ihnen verwendeten Attestierungsdienst entspricht:Google Cloud Attestation:
https://confidentialcomputing.googleapis.comIntel Trust Authority:
https://portal.trustauthority.intel.com
allowed-audiencesvonhttps://sts.googleapis.com. Dies ist der Security Token Service von Google, der Anmeldedaten gegen Zugriffstokens austauscht.Ein
attribute-mappingvongoogle.subjectmit dem folgenden Wert:\"gcpcs::\"+assertion.submods.container.image_digest+\"::\"+assertion.submods.gce.project_number+\"::\"+assertion.submods.gce.instance_id,attribute.image_digest=assertion.submods.container.image_digestDieser Wert wird mit der Common Expression Language (CEL) erstellt. Die folgenden Werte werden dem Attribut
gcpcszugewiesen und in Cloud Logging angezeigt, wenn die Arbeitslast auf Ressourcen zugreift:assertion.submods.container.image_digest: Der Digest des Arbeitslast-Container-Images.assertion.submods.gce.project_number: Die Projektnummer der VM-Instanz.assertion.submods.gce.instance_id: Die ID der VM-Instanz.
Außerdem wird
attribute.image_digestaufassertion.submods.container.image_digest, den Image-Digest des Arbeitslastcontainers, festgelegt. Dieses Attribut wird zugeordnet, damit Sie der föderierten Identität IAM-Rollen basierend auf einem bestimmten Image-Digest zuweisen können.Sie können alle verfügbaren Assertions für Arbeitslasten zuordnen, solange die Gesamtlänge des
google.subject-Werts weniger als 127 Byte beträgt.Die folgenden
attribute-conditions, die eine Attestierungsrichtlinie bilden. Wenn diese Bedingungen mit den Assertions der Arbeitslast übereinstimmen, darf die Arbeitslast als föderierte Identität auf die vertraulichen Ressourcen zugreifen:assertion.swname == 'CONFIDENTIAL_SPACE': Bestätigt, dass Confidential Space die Software ist, die auf der VM ausgeführt wird, mit allen integrierten Sicherheitsgarantien.'STABLE' in assertion.submods.confidential_space.support_attributes: Verifiziert, dass das Confidential Space-Produktions-Image verwendet wird und das Support-AttributSTABLEhat.
Weitere Attributbedingungen, die Sie verwenden können, finden Sie unter Attestierungsrichtlinie erstellen.
Der föderierten Identität IAM-Rollen zuweisen
Nachdem Sie einen WIP-Anbieter erstellt haben, können Sie der föderierten Identität eine IAM-Rolle zuweisen, je nachdem, ob der Container-Digest des Arbeitslast-Images der Identität mit einem erwarteten Wert übereinstimmt.
Im folgenden Beispiel wird einer föderierten Identität die Berechtigung zum Entschlüsseln eines bestimmten Cloud Key Management Service-Schlüssels gewährt:
gcloud kms keys add-iam-policy-binding \
projects/DATA_COLLABORATOR_PROJECT_ID/locations/global/keyRings/DATA_COLLABORATOR_KEYRING_NAME/cryptoKeys/DATA_COLLABORATOR_KEY_NAME \
--member="principalSet://iam.googleapis.com/projects/DATA_COLLABORATOR_PROJECT_NUMBER/locations/global/workloadIdentityPools/DATA_COLLABORATOR_POOL_NAME/attribute.image_digest/WORKLOAD_CONTAINER_IMAGE_DIGEST" \
--role=roles/cloudkms.cryptoKeyDecrypter
Identitätsübernahme des Dienstkontos
Die Methode zur Identitätsübernahme des Dienstkontos umfasst Folgendes:
Erstellen von Dienstkonten in jedem der Datenmitarbeiterprojekte und Gewähren der Berechtigung zum Entschlüsseln der vertraulichen Daten.
Erstellen Sie in jedem der Datenmitarbeiterprojekte WIPs und hängen Sie dann das gerade erstellte Dienstkonto jedes Projekts an das WIP an.
Erstellen Sie in jedem WIP WIP-Anbieter, die das Dienstkonto der Arbeitslast als das Konto angeben, das die Identität der Dienstkonten der Datenmitarbeiter übernehmen darf.
Dienstkonten zum Entschlüsseln vertraulicher Daten einrichten
Erstellen Sie die Dienstkonten in den Projekten der Datenpartner:
gcloud iam service-accounts create DATA_COLLABORATOR_SERVICE_ACCOUNT_NAMEGewähren Sie den Dienstkonten die Berechtigungen, die zum Entschlüsseln der vertraulichen Daten erforderlich sind. Beispielsweise können Sie vertrauliche Dateien in Cloud Storage mit Cloud KMS verschlüsseln. In diesem Fall müssen Sie dem Dienstkonto die Berechtigung zum Entschlüsseln dieser Daten erteilen:
gcloud kms keys add-iam-policy-binding \ projects/DATA_COLLABORATOR_PROJECT_ID/locations/global/keyRings/DATA_COLLABORATOR_KEYRING_NAME/cryptoKeys/DATA_COLLABORATOR_KEY_NAME \ --member=serviceAccount:DATA_COLLABORATOR_SERVICE_ACCOUNT_NAME@DATA_COLLABORATOR_PROJECT_ID.iam.gserviceaccount.com \ --role=roles/cloudkms.cryptoKeyDecrypter
WIP und Anbieter einrichten
Führen Sie die folgenden Schritte in jedem Datenmitarbeiterprojekt aus, um einen WIP und einen Anbieter einzurichten:
Erstellen Sie den WIP:
gcloud iam workload-identity-pools create DATA_COLLABORATOR_POOL_NAME \ --location=globalHängen Sie das Dienstkonto, das die Identität des WIP übernehmen soll, mit der Rolle
roles/iam.workloadIdentityUseran den WIP an:gcloud iam service-accounts add-iam-policy-binding \ DATA_COLLABORATOR_SERVICE_ACCOUNT_NAME@DATA_COLLABORATOR_PROJECT_ID.iam.gserviceaccount.com \ --member="principalSet://iam.googleapis.com/projects/DATA_COLLABORATOR_PROJECT_NUMBER/locations/global/workloadIdentityPools/DATA_COLLABORATOR_POOL_NAME/*" \ --role=roles/iam.workloadIdentityUserErstellen Sie einen OIDC-Anbieter im WIP und definieren Sie darin das Dienstkonto für die Arbeitslast, damit es die Identität des Dienstkontos des Datenmitarbeiters übernehmen kann:
gcloud iam workload-identity-pools providers create-oidc attestation-verifier \ --location=global \ --workload-identity-pool=DATA_COLLABORATOR_POOL_NAME \ --issuer-uri="https://confidentialcomputing.googleapis.com/" \ --allowed-audiences="https://sts.googleapis.com" \ --attribute-mapping="google.subject=assertion.sub" \ --attribute-condition="assertion.submods.container.image_digest == 'WORKLOAD_CONTAINER_IMAGE_DIGEST' \ && 'WORKLOAD_SERVICE_ACCOUNT_NAME@WORKLOAD_OPERATOR_PROJECT_ID.iam.gserviceaccount.com' in assertion.google_service_accounts \ && assertion.swname == 'CONFIDENTIAL_SPACE' \ && 'STABLE' in assertion.submods.confidential_space.support_attributes"In diesem Beispiel werden die folgenden Werte verwendet:
Ein
issuer-urivonhttps://confidentialcomputing.googleapis.com/, was bedeutet, dass Google Cloud Attestation als Attestierungsdienst verwendet wird.allowed-audiencesvonhttps://sts.googleapis.com. Dies ist der Security Token Service von Google, der Anmeldedaten gegen Zugriffstokens austauscht.Ein
attribute-mappingvongoogle.subjectmit dem Wertassertion.sub. Dies ist dieselfLinkder VM-Instanz, wie in dersub-Anforderung im Attestierungstoken definiert.Die VM-Instanz
selfLinkwird in Cloud Logging angezeigt, wenn die Arbeitslast auf Ressourcen zugreift.Die folgenden
attribute-conditions, die eine Attestierungsrichtlinie bilden. Wenn diese Bedingungen mit den Assertions der Arbeitslast übereinstimmen, darf die Arbeitslast als föderierte Identität auf Ressourcen zugreifen:assertion.submods.container.image_digest == 'WORKLOAD_CONTAINER_IMAGE_DIGEST': Prüft, ob der Digest des Workload-Container-Images mit dem erwarteten Wert übereinstimmt.'WORKLOAD_SERVICE_ACCOUNT_NAME@WORKLOAD_PROJECT_ID.iam.gserviceaccount.com' in assertion.google_service_accounts: Prüft, ob das an die Arbeitslast angehängte Dienstkonto mit dem erwarteten Dienstkonto übereinstimmt, und verwendet es dann, um die Identität des Dienstkontos des Datenmitarbeiters zu übernehmen.assertion.swname == 'CONFIDENTIAL_SPACE': Bestätigt, dass Confidential Space die Software ist, die auf der VM ausgeführt wird, mit allen integrierten Sicherheitsgarantien.'STABLE' in assertion.submods.confidential_space.support_attributes: Verifiziert, dass das Confidential Space-Produktions-Image verwendet wird und das Support-AttributSTABLEhat.
Weitere Attributbedingungen, die Sie verwenden können, finden Sie unter Attestierungsrichtlinie erstellen.
Attestierungsrichtlinie erstellen
Im Rahmen der Erstellung eines WIP müssen Sie eine Attestierungsrichtlinie erstellen. Die Assertions einer authentifizierenden Entität müssen mit Ihrer Richtlinie übereinstimmen, damit sie auf Ihre Daten zugreifen kann.
Richtlinien werden in der Common Expression Language (CEL) geschrieben und bestehen aus einer Reihe von Anweisungen, die mit dem Operator && verkettet werden können.
Die Anweisungen verwenden Assertions aus dem Confidential Space-Image, dem Arbeitslast-Container-Image oder der VM-Instanz als Variablen und den von Ihnen angegebenen Wert als Ausdruck.
Hier ist beispielsweise eine Richtlinie, die erzwingt, dass die Arbeitslast Confidential Space verwendet, ein STABLE Confidential Space-Image verwenden muss und dass die Zone, in der die Arbeitslast-VM-Instanz ausgeführt wird, us-central1-a sein muss:
assertion.swname == 'CONFIDENTIAL_SPACE' \
&& 'STABLE' in assertion.submods.confidential_space.support_attributes" \
&& assertion.submods.gce.zone == "us-central1-a"
Weitere Informationen finden Sie unter Attestierungs-Assertions.
Attestierungs-Assertions
Die verfügbaren Assertions zum Erstellen einer Attestierungsrichtlinie sind in der folgenden Tabelle aufgeführt. Mit Richtlinien können Assertions validiert werden, die vom Confidential Space-Image, vom Arbeitslastcontainer und von der VM-Instanz erstellt wurden.
Image-Assertions
| Assertion | Typ | Beschreibung | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Interagiert mit:
|
Aufzählung |
Prüft, ob das Confidential Space-Image die Debugging- oder Produktionsversion ist. Folgende Werte sind gültig:
BeispieleMit dem folgenden Code wird geprüft, ob die Debugging-Version des Confidential Space-Images verwendet wird: Mit dem folgenden Code wird geprüft, ob die Produktionsversion des Confidential Space-Images verwendet wird: |
||||||||||
assertion.submods.confidential_space.support_attributes
|
Stringarray |
Prüft, ob die Sicherheitsversion des TEE ein Confidential Space-Produktions-Image ist. Für Confidential Space-Debug-Images ist kein Support-Attribut festgelegt. In der folgenden Tabelle werden die Support-Attribute für Confidential Space-Produktions-Images beschrieben.
Wir empfehlen, Ihr Confidential Space-Image auf dem neuesten Stand zu halten. Informationen zum Aktualisieren Ihres Confidential Space-Images finden Sie unter Confidential Space-Images aktualisieren. BeispielMit dem folgenden Code wird geprüft, ob eine stabile Version des Confidential Space-Images verwendet wird: |
||||||||||
assertion.swname |
Aufzählung |
Verifiziert die Software, die auf der attestierenden Entität ausgeführt wird. Der Wert ist immer Beispiel |
||||||||||
assertion.swversion |
Stringarray |
Verifiziert die Softwareversion des Confidential Space-Images. Wir empfehlen, stattdessen Beispiel |
Container-Assertions
| Assertion | Typ | Beschreibung |
|---|---|---|
|
Interagiert mit:
|
Stringarray |
Verifiziert die CMD-Befehle und -Parameter, die im Arbeitslast-Image verwendet werden. BeispieleMit dem folgenden Code wird geprüft, ob der CMD des Arbeitslast-Images nicht überschrieben wurde:
Mit dem folgenden Code wird geprüft, ob |
|
Interagiert mit:
|
JSON-Objekt |
Verifiziert, dass Umgebungsvariablen und deren Werte explizit an den Container übergeben wurden. Beispiel
Mit dem folgenden Code wird geprüft, ob die Umgebungsvariable |
|
Interagiert mit:
|
String |
Prüft, ob der Arbeitslastoperator Umgebungsvariablen im Container überschrieben hat. Beispiele
Mit dem folgenden Code wird geprüft, ob der Arbeitslastoperator die Umgebungsvariable Mit dem folgenden Code wird geprüft, ob der Arbeitslastoperator Umgebungsvariablen überschrieben hat: |
assertion.submods.container.image_digest |
String |
Verifiziert den Image-Digest des Arbeitslastcontainers. Durch die Angabe dieser Bedingung können mehrere Parteien einer autorisierten Arbeitslast zustimmen, die auf ihre Daten zugreifen darf. Beispiel |
assertion.submods.container.image_id |
String |
Verifiziert die Image-ID des Arbeitslastcontainers. Beispiel |
|
Interagiert mit:
|
String |
Verifiziert den Speicherort des Arbeitslastcontainers, der auf dem Confidential Space-Image ausgeführt wird. Beispiel |
|
Interagiert mit:
|
JSON-Objekt |
Prüft, ob das Image eine bestimmte Signatur hat oder mit einem öffentlichen Schlüssel und einem Signaturalgorithmus signiert ist. Durch die Angabe dieser Bedingung können mehrere Parteien einer autorisierten Arbeitslast zustimmen, die auf ihre Daten zugreifen darf. Die Assertion kann die folgenden Elemente enthalten:
Beispiel |
|
Interagiert mit:
|
Aufzählung |
Prüft die Neustart-Richtlinie des Container-Launchers, wenn die Arbeitslast beendet wird. Folgende Werte sind gültig:
Beispiel |
VM-Assertions
| Assertion | Typ | Beschreibung |
|---|---|---|
|
Interagiert mit:
|
Stringarray |
Prüft, ob ein bestimmtes Dienstkonto mit der VM verbunden ist, auf der die Arbeitslast ausgeführt wird, oder mit Beispiel |
assertion.hwmodel |
String |
Überprüft die zugrunde liegende Confidential Computing-Technologie. Die unterstützten Plattformen sind:
Beispiel |
|
Interagiert mit:
|
Boolesch |
Prüft den Monitoringstatus auf der attestierenden Entität. Beispiel |
assertion.submods.gce.instance_id |
String |
Verifiziert die VM-Instanz-ID. Beispiel |
assertion.submods.gce.instance_name |
String |
Verifiziert den Namen der VM-Instanz. Beispiel |
assertion.submods.gce.project_id |
String |
Prüft, ob auf der VM ein Google Cloud -Projekt mit der angegebenen Projekt-ID ausgeführt wird. Beispiel |
assertion.submods.gce.project_number |
String |
Prüft, ob die VM in einem Google Cloud -Projekt mit der angegebenen Projektnummer ausgeführt wird. Beispiel |
|
Interagiert mit:
|
String |
Prüft, ob die VM in der angegebenen Zone ausgeführt wird. Beispiel |
|
Interagiert mit:
|
Aufzählung |
Prüft die von einer NVIDIA-GPU unterstützten Confidential Computing-Features. In Confidential Space wird nur der SPT-Modus (Single GPU Passthrough) unterstützt. Der Wert ist also immer Weitere Informationen zur Unterstützung von NVIDIA Confidential Computing finden Sie unter NVIDIA Trusted Computing Solutions (PDF). Beispiel |
|
Interagiert mit:
|
Aufzählung |
Prüft den Status des Confidential Computing-Treibers von NVIDIA. Folgende Werte sind gültig:
Beispiel |
|
Interagiert mit:
|
Objekt-Array |
Prüft die Ansprüche für jede attestierte NVIDIA-GPU. Confidential Space unterstützt nur eine einzelne GPU-Anforderung. Ein { "hwmodel": "GCP_NVIDIA_H100", "ueid": "490457405999046854973671575630853621547794591064", "l4_serial_number": "1216669666319372030078", "driver_version": "570.00", "vbios_version": "96.00.9F.00.01" } BeispieleMit dem folgenden Code wird geprüft, ob das erste GPU-Hardwaremodell eine NVIDIA H100 ist, die auf Google Cloudausgeführt wird: Mit dem folgenden Code wird geprüft, ob die Attestierungsforderung GPU-bezogene Anforderungen enthält: |