Dichiarazioni relative ai token di attestazione


Rivendicazioni di primo livello

La tabella seguente descrive le rivendicazioni di primo livello nel token di attestazione. Questi elementi sono conformi alla specifica OpenID Connect 1.0.

Scopri di più sui token di attestazione

Chiave Tipo Descrizione
Intestazione
x5c Stringa Presente solo nei token PKI. La catena di certificati per convalidare i token PKI. Puoi scaricare il certificato radice dall' endpoint di convalida del token PKI.
Payload di dati JSON
attester_tcb Array di stringhe

Uno o più componenti TCB (trusted computing base). Questa rivendicazione serve a specificare l'origine delle prove di attestazione.

Per hwmodel claim "GCP_INTEL_TDX" su Confidential Space, il valore è impostato su ["INTEL"], a indicare che la radice di attendibilità dell'attestazione proviene dalla tecnologia hardware specifica di Intel.

aud Stringa

Il pubblico. Per il token predefinito utilizzato con un pool di identità del carico di lavoro, il pubblico è https://sts.googleapis.com. Questo token viene recuperato ogni ora dal launcher nell'istanza Confidential VM.

Per i token con segmenti di pubblico personalizzati, il segmento di pubblico viene ripreso dal segmento di pubblico nella richiesta di token. La lunghezza massima è di 512 byte.

dbgstat Stringa Lo stato di debug dell'hardware. Nelle immagini di produzione, il valore è disabled-since-boot. Nelle immagini di debug, il valore è enabled.
eat_nonce Stringa o array di stringhe Uno o più nonce per il token di attestazione. I valori vengono ripresi dalle opzioni del token inviate nella richiesta di token personalizzato. Ogni nonce deve essere compreso tra 8 e 88 byte inclusi. Sono consentiti massimo sei nonce.
exp Int, timestamp Unix L'ora di scadenza a partire dalla quale il token non deve essere accettato per l'elaborazione. Il valore è un numero JSON che rappresenta il numero di secondi da 1970-01-01T0:0:0Z misurati in UTC fino all'ora di scadenza.
google_service_accounts Array di stringhe I service account convalidati che eseguono il workload Confidential Space.
hwmodel Stringa

L'identificatore univoco del token hardware. Deve essere uno dei seguenti valori:

  • GCP_AMD_SEV
  • GCP_AMD_SEV_ES
  • GCP_SHIELDED_VM
  • GCP_INTEL_TDX
https://aws.amazon.com/tags Oggetto Consulta Rivendicazioni dei tag entità AWS.
iat Int, timestamp Unix L'ora in cui è stato emesso il JWT. Il valore è un numero JSON che rappresenta il numero di secondi da 1970-01-01T0:0:0Z misurato in UTC fino all'ora del problema.
iss Stringa L'emittente del token, impostata su https://confidentialcomputing.googleapis.com.
nbf Int, timestamp Unix Il momento dopo il quale è consentito elaborare il JWT. Il valore è un numero JSON che rappresenta il numero di secondi da 1970-01-01T0:0:0Z misurato in UTC.
oemid Uint64 Il numero aziendale privato (PEN) di Google, ovvero 11129.
secboot Booleano Se l'avvio protetto è abilitato, il che garantisce che il firmware e il sistema operativo vengano autenticati durante il processo di avvio della VM. Questo valore è sempre true.
sub Stringa Il soggetto, ovvero l'ID macchina virtuale completo per la Confidential VM. Ad esempio, https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_ID. Questo formato è noto come selfLink dell'istanza.
submods Array Una serie di varie rivendicazioni. Consulta Richieste di submod.
tdx Array Una serie di varie rivendicazioni. Consulta le affermazioni di Intel TDX.
swname Stringa

Il nome del sistema operativo approvato per la VM.

I valori validi sono CONFIDENTIAL_SPACE o GCE. Il valore CONFIDENTIAL_SPACE è per le immagini di Confidential Space sottoposte a hardening e debug che hanno superato tutte le convalide.

swversion Array di stringhe

La versione del sistema operativo. Il valore è un array di stringhe che contiene un solo valore.

La versione segue il formato YYYYMM##, dove ## è un contatore del numero di immagini rilasciate prima dell'immagine utilizzata nello stesso mese.

Rivendicazioni dei tag principal AWS

La tabella seguente descrive le attestazioni AWS_PrincipalTag nel token di attestazione. Queste rivendicazioni vengono inserite nelle rivendicazioni https://aws.amazon.com/tags, nell'oggetto principal_tags del token di attestazione. Per informazioni sulla struttura delle rivendicazioni https://aws.amazon.com/tags, consulta Rivendicazioni dei tag principal AWS.

Chiave Tipo Descrizione
confidential_space.support_attributes Array di stringhe

Rivendicazione derivata degli attributi di supporto. Si tratta di una rappresentazione di stringa concatenata delle rivendicazioni originali.

Ad esempio, se le rivendicazioni originali sono Latest, Stable e Usable, questo attributo contiene LATEST=STABLE=USABLE. Se la richiesta originale è solo Usable, questo attributo contiene USABLE.

container.image_digest Array di stringhe

Consulta Rivendicazioni dei container del carico di lavoro.

Le firme e i digest delle immagini container non vengono visualizzati insieme in un unico token. Se utilizzi container.image_digest nelle tue policy AWS, devi rimuovere tutti i riferimenti a container.signatures.key_ids.

container.signatures.key_id Array di stringhe

Un elenco concatenato di ID chiave di firma dell'immagine container. Questo campo rappresenta più ID chiave di firma uniti in una singola stringa nell'array.

Ad esempio, se hai gli ID chiave aKey1, zKey2 e bKey3, questa rivendicazione contiene il valore aKey1=bKey3=zKey2.

Le firme e i digest delle immagini container non vengono visualizzati insieme in un unico token. Se utilizzi container.signatures.key_ids nelle tue policy AWS, devi rimuovere tutti i riferimenti a container.image_digest.

Per ulteriori informazioni sulle attestazioni della firma dell'immagine container, consulta Norme AWS con attestazioni della firma dell'immagine container.

gce.project_id Array di stringhe Consulta Compute Engine claims.
gce.zone Array di stringhe Consulta Compute Engine claims.

Affermazioni relative a Intel TDX

La tabella seguente descrive le attestazioni tdx nel token di attestazione.

Chiave Tipo Descrizione
gcp_attester_tcb_status Stringa

Un valore stringa che rappresenta lo stato del livello TCB della Google Cloud piattaforma in fase di valutazione. Per ulteriori informazioni su tcbStatus, consulta la documentazione dell'API Provisioning Certification Service di Intel.

Questa rivendicazione indica che la versione TCB di TDX era aggiornata con i valori di riferimento di Intel quando Google ha iniziato il lancio del firmware. Tuttavia, non garantisce che la flotta Google rimanga aggiornata con i valori di riferimento TCB in tempo reale di Intel.

gcp_attester_tcb_date Stringa La data TCB per la piattaforma di attestazione Google Cloud . Il valore dell'ora è UTC nel formato ISO 8601 (YYYY-MM-DDThh:mm:ssZ).

Rivendicazioni dei submod

La tabella seguente descrive le attestazioni submods nel token di attestazione.

Chiave Tipo Descrizione
confidential_space.support_attributes Array di stringhe L'array può contenere i valori EXPERIMENTAL, USABLE, STABLE e LATEST. Per maggiori informazioni, vedi Ciclo di vita delle immagini di Confidential Space.
confidential_space.monitoring_enabled Oggetto Mostra il tipo di monitoraggio del sistema abilitato. Il valore può essere {"memory":false} o {"memory":true}.
container Oggetto Consulta Rivendicazioni dei container del carico di lavoro.
gce Oggetto Consulta Compute Engine claims.
nvidia_gpu.cc_mode (anteprima) Stringa

Lo stato di Confidential Computing della GPU NVIDIA. Questa rivendicazione attesta solo il driver GPU, non l'intero dispositivo GPU.

Il valore può essere uno dei seguenti:

  • OFF: nessuna delle funzionalità di Confidential Computing di NVIDIA è attiva.
  • ON: l'hardware, il firmware e il software NVIDIA H100 hanno attivato completamente le funzionalità di confidential computing.
  • DEVTOOLS: la GPU è in modalità di confidential computing parziale che corrisponde ai flussi di lavoro della modalità ON, ma disattiva le protezioni di sicurezza.

Richieste di Compute Engine

La tabella seguente descrive le attestazioni gce nel token di attestazione.

Chiave Tipo Descrizione
instance_id Stringa L'ID istanza VM.
instance_name Stringa Il nome dell'istanza VM.
project_id Stringa L' ID progetto del progetto in cui è in esecuzione la VM.
project_number Stringa Il numero di progetto del progetto in cui è in esecuzione la VM.
zone Stringa La zona Compute Engine in cui è in esecuzione l'istanza Confidential VM.

Rivendicazioni dei container del workload

La tabella seguente descrive le attestazioni container nel token di attestazione. Per saperne di più su queste attestazioni, consulta Asserzioni di attestazione.

Chiave Tipo Descrizione
args Array di stringhe Il comando argv completo con cui viene richiamato il container. Questa rivendicazione include il percorso del punto di ingresso del container e qualsiasi argomento aggiuntivo della riga di comando.
cmd_override Array di stringhe I CMD comandi e parametri utilizzati nell'immagine del workload.
env Oggetto Le variabili di ambiente e i relativi valori che sono stati passati in modo esplicito al container.
env_override Oggetto Le variabili di ambiente sovrascritte nel container.
image_digest Stringa Il digest dell'immagine del container del carico di lavoro.
image_id Stringa L'ID immagine del container del carico di lavoro.
image_reference Stringa La posizione del container del workload in esecuzione in Confidential Space.
image_signatures Array di oggetti Consulta Attestazioni di firma dell'immagine container.
restart_policy Stringa La policy di riavvio del launcher del container quando il workload si arresta. I valori validi sono Always, OnFailure e Never. Il valore predefinito è Never.

Rivendicazioni di firma dell'immagine container

La tabella seguente descrive le rivendicazioni image_signatures nel token di attestazione.

Chiave Tipo Descrizione
key_id Stringa

L'impronta esadecimale della chiave pubblica. Per ottenere l'impronta, puoi eseguire il seguente comando:

openssl pkey -pubin -in public_key.pem -outform DER | openssl sha256

Dove public_key.pem è la tua chiave pubblica in formato PEM.

signature Stringa La firma con codifica Base64 per un payload associato al container firmato e che segue il formato di firma semplice.
signature_algorithm Stringa

L'algoritmo utilizzato per firmare la chiave. Il valore sarà uno dei seguenti:

  • RSASSA_PSS_SHA256 (RSASSA-PSS con un digest SHA-256)
  • RSASSA_PKCS1V15_SHA256 (RSASSA-PKCS1 v1_5 con un digest SHA-256)
  • ECDSA_P256_SHA256 (ECDSA sulla curva P-256 con un digest SHA-256)

Passaggi successivi