Reivindicações de tokens de atestação


Reivindicações de nível superior

A tabela seguinte descreve as reivindicações de nível superior no token de atestação. Estes itens estão em conformidade com a especificação OpenID Connect 1.0.

Leia mais acerca dos tokens de atestação

Chave Tipo Descrição
Cabeçalho
x5c String Apenas presente em tokens de ICP. A cadeia de certificados para validar os tokens de PKI. Pode transferir o certificado de raiz a partir do ponto final de validação de tokens de PKI.
Payload de dados JSON
attester_tcb Matriz de strings

Um ou mais componentes da base de computação fidedigna (TCB). Esta reivindicação destina-se a especificar a origem das provas de atestação.

Para o hwmodel claim "GCP_INTEL_TDX" no Confidential Space, o valor está definido como ["INTEL"], o que indica que a raiz de confiança da atestação tem origem na tecnologia de hardware específica da Intel.

aud String

O público. Para o token predefinido usado com um Workload Identity Pool, o público-alvo é https://sts.googleapis.com. Este token é obtido a cada hora pelo iniciador na instância de VM confidencial.

Para tokens com públicos-alvo personalizados, o público-alvo é repetido a partir do público-alvo no pedido de token. O comprimento máximo é de 512 bytes.

dbgstat String O estado de depuração do hardware. Nas imagens de produção, o valor é disabled-since-boot. Nas imagens de depuração, o valor é enabled.
eat_nonce String ou matriz de strings Um ou mais valores únicos para o token de atestação. Os valores são repetidos a partir das opções de token enviadas no pedido de token personalizado. Cada nonce tem de ter entre 8 e 88 bytes, inclusive. É permitido um máximo de seis nonces.
exp Int, indicação de tempo Unix A hora de expiração a partir da qual o token não deve ser aceite para processamento. O valor é um número JSON que representa o número de segundos a partir de 1970-01-01T0:0:0Z, medido em UTC, até à hora de validade.
google_service_accounts Matriz de strings As contas de serviço validadas que estão a executar a carga de trabalho do espaço confidencial.
hwmodel String

O identificador exclusivo do token de hardware. Tem de ser um dos seguintes valores:

  • GCP_AMD_SEV
  • GCP_AMD_SEV_ES
  • GCP_SHIELDED_VM
  • GCP_INTEL_TDX
https://aws.amazon.com/tags Objeto Consulte as reivindicações de etiquetas principais da AWS.
iat Int, indicação de tempo Unix A hora em que o JWT foi emitido. O valor é um número JSON que representa o número de segundos desde 1970-01-01T0:0:0Z, medido em UTC, até à hora de emissão.
iss String O emissor do token, que está definido como https://confidentialcomputing.googleapis.com.
nbf Int, indicação de tempo Unix A hora após a qual o JWT pode ser processado. O valor é um número JSON que representa o número de segundos a partir de 1970-01-01T0:0:0Z, medido em UTC.
oemid Uint64 O Número de empresa privada (PEN) da Google, que é 11129.
secboot Booleano Se o arranque seguro está ativado, o que garante que o firmware e o sistema operativo são autenticados durante o processo de arranque da VM. Este valor é sempre true.
sub String O assunto, que é o ID da máquina virtual totalmente qualificado para a VM confidencial. Por exemplo, https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_ID. Este formato é conhecido como o selfLink da instância.
submods Matriz Uma variedade de várias reivindicações. Veja as reivindicações de submods.
tdx Matriz Uma variedade de várias reivindicações. Consulte as afirmações do Intel TDX.
swname String

O nome do sistema operativo aprovado para a VM.

Os valores válidos são CONFIDENTIAL_SPACE ou GCE. O valor CONFIDENTIAL_SPACE destina-se a imagens do Confidential Space reforçadas e de depuração que passaram em todas as validações.

swversion Matriz de strings

A versão do sistema operativo. O valor é uma matriz de strings que contém apenas um valor.

A versão segue o formato YYYYMM##, em que ## é um contador do número de imagens lançadas antes da imagem que está a ser usada no mesmo mês.

Reivindicações de etiquetas principais da AWS

A tabela seguinte descreve as reivindicações AWS_PrincipalTag no token de atestação. Estas reivindicações são colocadas no objeto https://aws.amazon.com/tags claims, no objeto principal_tags no token de atestação. Para saber mais sobre a https://aws.amazon.com/tagsestrutura de reivindicações, consulte Reivindicações de etiquetas principais da AWS.

Chave Tipo Descrição
confidential_space.support_attributes Matriz de strings

Reivindicação derivada de atributos de apoio técnico. Esta é uma representação de string concatenada das reivindicações originais.

Por exemplo, se as reivindicações originais forem Latest, Stable e Usable, este atributo contém LATEST=STABLE=USABLE. Se a reivindicação original for apenas Usable, este atributo contém USABLE.

container.image_digest Matriz de strings

Consulte Reivindicações de contentores de cargas de trabalho.

As assinaturas e os resumos de imagens de contentores não aparecem juntos num único token. Se estiver a usar container.image_digest nas suas políticas da AWS, tem de remover todas as referências a container.signatures.key_ids.

container.signatures.key_id Matriz de strings

Uma lista concatenada de IDs de chaves de assinatura de imagens de contentores. Este campo representa vários IDs de chaves de assinatura unidos numa única string na matriz.

Por exemplo, se tiver os IDs das chaves aKey1, zKey2 e bKey3, esta reivindicação contém o valor aKey1=bKey3=zKey2.

As assinaturas e os resumos de imagens de contentores não aparecem juntos num único token. Se estiver a usar container.signatures.key_ids nas suas políticas da AWS, tem de remover todas as referências a container.image_digest.

Para mais informações sobre reivindicações de assinatura de imagens de contentores, consulte o artigo Políticas da AWS com reivindicações de assinatura de imagens de contentores.

gce.project_id Matriz de strings Consulte as reivindicações do Compute Engine.
gce.zone Matriz de strings Consulte as reivindicações do Compute Engine.

Reivindicações do Intel TDX

A tabela seguinte descreve as reivindicações tdx no token de atestação.

Chave Tipo Descrição
gcp_attester_tcb_status String

Um valor de string que representa o estado ao nível do TCB da Google Cloud plataforma que está a ser avaliada. Para mais informações acerca da tcbStatus, consulte a documentação da API do serviço de certificação de aprovisionamento da Intel.

Esta reivindicação indica que a versão do TCB do TDX estava atualizada com os valores de referência da Intel quando a Google iniciou a implementação do firmware. No entanto, não garante que a frota Google permaneça atualizada com os valores de referência da TCB em tempo real da Intel.

gcp_attester_tcb_date String A data do TCB para a plataforma de atestação Google Cloud . O valor da hora é UTC no formato ISO 8601 (YYYY-MM-DDThh:mm:ssZ).

Reivindicações de submods

A tabela seguinte descreve as reivindicações submods no token de atestação.

Chave Tipo Descrição
confidential_space.support_attributes Matriz de strings A matriz pode conter os valores EXPERIMENTAL, USABLE, STABLE e LATEST. Para mais informações, consulte Ciclo de vida das imagens do Confidential Space.
confidential_space.monitoring_enabled Objeto Mostra o tipo de monitorização do sistema que está ativada. O valor pode ser {"memory":false} ou {"memory":true}.
container Objeto Consulte as reivindicações de contentores de cargas de trabalho.
gce Objeto Consulte as reivindicações do Compute Engine.
nvidia_gpu.cc_mode (Pré-visualizar) String

O estado da computação confidencial da GPU NVIDIA. Esta reivindicação atesta apenas o controlador da GPU e não todo o dispositivo GPU.

O valor pode ser um dos seguintes:

  • OFF: nenhuma das funcionalidades de computação confidencial da NVIDIA está ativa.
  • ON: o hardware, o firmware e o software NVIDIA H100 ativaram totalmente as funcionalidades de computação confidencial.
  • DEVTOOLS: a GPU está num modo de computação confidencial parcial que corresponde aos fluxos de trabalho do modo ON, mas desativa as proteções de segurança.

Reivindicações do Compute Engine

A tabela seguinte descreve as reivindicações gce no token de atestação.

Chave Tipo Descrição
instance_id String O ID da instância de VM.
instance_name String O nome da instância de VM.
project_id String O ID do projeto do projeto no qual a VM está a ser executada.
project_number String O número do projeto no qual a VM está a ser executada.
zone String A zona do Compute Engine onde a instância de VM confidencial está a ser executada.

Reivindicações de contentores de cargas de trabalho

A tabela seguinte descreve as reivindicações container no token de atestação. Para mais informações acerca destas reivindicações, consulte o artigo Afirmações de atestação.

Chave Tipo Descrição
args Matriz de strings O argv completo com o qual o contentor é invocado. Esta reivindicação inclui o caminho do ponto de entrada do contentor e quaisquer argumentos adicionais da linha de comandos.
cmd_override Matriz de strings Os comandos e os parâmetros CMD usados na imagem da carga de trabalho.
env Objeto As variáveis de ambiente e os respetivos valores que foram transmitidos explicitamente para o contentor.
env_override Objeto As variáveis de ambiente substituídas no contentor.
image_digest String O resumo da imagem do contentor da carga de trabalho.
image_id String O ID da imagem do contentor da carga de trabalho.
image_reference String A localização do contentor de carga de trabalho em execução no espaço confidencial.
image_signatures Matriz de objetos Consulte as reivindicações de assinatura de imagens de contentores.
restart_policy String A política de reinício do iniciador de contentores quando a carga de trabalho para. Os valores válidos são Always, OnFailure e Never. A predefinição é Never.

Reivindicações de assinatura de imagens de contentores

A tabela seguinte descreve as reivindicações image_signatures no token de atestação.

Chave Tipo Descrição
key_id String

A impressão digital hexadecimal da chave pública. Para obter a impressão digital, pode executar o seguinte comando:

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

Onde public_key.pem é a sua chave pública no formato PEM.

signature String A assinatura codificada em base64 de uma carga útil associada ao contentor assinado e que segue o formato de assinatura simples.
signature_algorithm String

O algoritmo usado para assinar a chave. Uma das seguintes opções:

  • RSASSA_PSS_SHA256 (RSASSA-PSS com um resumo SHA-256 )
  • RSASSA_PKCS1V15_SHA256 (RSASSA-PKCS1 v1_5 com um resumo SHA-256)
  • ECDSA_P256_SHA256 (ECDSA na curva P-256 com um resumo SHA-256)

O que se segue?