O atestado é o processo que estabelece a confiança na Computação confidencial. A atestação funciona como um mecanismo de verificação digital, garantindo que os dados confidenciais sejam processados apenas em ambientes de execução confiável (TEEs) baseados em hardware que foram rigorosamente examinados.
A Attestation do Google Cloud oferece uma solução unificada para verificar remotamente a confiabilidade de todos os ambientes confidenciais do Google. O serviço oferece suporte a atestados de ambientes confidenciais com suporte de um módulo de plataforma confiável virtual (vTPM, na sigla em inglês) para SEV e o módulo TDX para Intel TDX.
A Attestation do Google Cloud pode ser aplicada nos seguintes serviços Google Cloud:
Serviço de computação confidencial | Tecnologia de computação confidencial | Suporte para a Google Cloud Attestation |
---|---|---|
VM confidencial | AMD SEV | |
VM confidencial | AMD SEV-SNP | |
VM confidencial | Intel TDX | |
Confidential Space | AMD SEV | |
Confidential Space | Intel TDX | |
Confidential GKE Nodes | AMD SEV |
Embora o Google Cloud Attestation seja conveniente, ferramentas de código aberto também podem extrair relatórios de atestado diretamente para instâncias de VM confidenciais. Para mais detalhes, consulte Solicitar um relatório de atestado.
Como funciona a Attestation do Google Cloud
O Google Cloud Attestation coleta internamente endossos diretamente dos fornecedores de hardware e mantém o próprio conjunto de valores de referência e políticas de avaliação adaptados especificamente para cada ambiente confidencial. Ele fornece APIs para Google Cloud os usuários buscarem tokens de declaração de resultado de atestado.
A Attestation do Google Cloud coleta informações do seu ambiente confidencial e as compara com valores aprovados e políticas mantidas pelo Google. Essas verificações são convertidas em declarações verificáveis que aderem ao padrão IETF Remote ATtestation ProcedureS (RATS) Entity Attestation Token (EAT). Em seguida, a Attestation do Google Cloud fornece provas criptográficas dessas declarações que podem ser usadas por serviços que dependem dessas declarações, como o Secret Manager e o Identity and Access Management (IAM) do Google.
As provas criptográficas podem ser validadas das seguintes maneiras:
Usando uma chave pública. Para mais informações, consulte Tokens do OIDC. Essa é a opção mais simples e funciona de forma nativa com aplicativos compatíveis com o OIDC.
Usando um certificado raiz. Para mais informações, consulte Tokens de PKI. Essa opção permite a verificação off-line, sem a necessidade de cada parte confiável descobrir a chave de verificação. Para um exemplo completo de validação off-line, consulte o codelab Usar o Confidential Space com recursos protegidos que não são armazenados com um provedor de nuvem.
Visão geral da arquitetura do RATS
A arquitetura de procedimentos de atestado remoto (RATS, na sigla em inglês) envolve as seguintes entidades principais:
Atestador: uma entidade que fornece evidências de confiabilidade. Em Google Cloud, é um ambiente confidencial (por exemplo, VM confidencial, nós confidenciais do GKE ou espaço confidencial).
Verificador: uma entidade que avalia as evidências e gera resultados de atestado. Este é o atestado do Google Cloud.
Parte confiável: uma entidade que depende dos resultados do atestado para tomar decisões, por exemplo, um app para dispositivos móveis, um bucket de armazenamento ou um sistema de gerenciamento de chaves.
A arquitetura RATS abrange as seguintes funções principais:
Proprietário da parte confiável: uma entidade que configura a política de avaliação para a parte confiável.
Proprietário do verificador: uma entidade que configura a política de avaliação para o verificador (por exemplo, o Google).
Avaliador: uma entidade que fornece endossos que validam os recursos do emissor do atestado (por exemplo, OEMs de hardware como AMD, Intel ou Nvidia).
Provedor de valor de referência: uma entidade que fornece valores de referência para o verificador validar as declarações do emissor do certificado.
Fluxo de trabalho de atestado de modelo de passaporte
A Attestation do Google Cloud usa o modelo de passaporte. O fluxo de trabalho de alto nível do modelo de passaporte envolve as seguintes etapas:
O emissor do atestado (ambiente confidencial) solicita um resultado de atestado do verificador (Google Cloud Attestation) fornecendo evidências.
O verificador avalia as evidências e emite um resultado de atestado.
O emissor apresenta esse resultado à parte confiável.
Nesse fluxo de trabalho, a Attestation do Google Cloud atua como verificador. Ambientes confidenciais, como VMs confidenciais, nós confidenciais do GKE ou o Confidential Space, atuam como o atestador. As partes confiáveis incluem o Thales EKM, o IAM do Google e outros corretores de tokens.
Para garantir a atualidade dos resultados do atestado, o Google Cloud Attestation usa um número criptográfico que não pode ser reutilizado. O emissor de atestados pode fornecer um número aleatório, acordado com a parte confiável, ao verificador. A parte confiável pode validar esse número para garantir a atualidade e correção.