Weitere Informationen zur Verwendung von Attestierungs-Assertions finden Sie unter Attestierungsrichtlinie erstellen.
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 |
Verifiziert 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: |