Partilhar via


Contêineres confidenciais em instâncias de contêiner do Azure

Este artigo apresenta como os contêineres confidenciais nas Instâncias de Contêiner do Azure (ACI) podem permitir que você proteja suas cargas de trabalho em execução na nuvem. Este artigo fornece informações básicas sobre o conjunto de recursos, cenários, limitações e recursos.

Os contêineres confidenciais nas Instâncias de Contêiner do Azure permitem que os clientes executem contêineres Linux em um TEE (Ambiente de Execução Confiável) baseado em hardware e atestado. Os clientes podem levantar e mudar seus aplicativos Linux em contêineres ou construir novos aplicativos de computação confidenciais sem a necessidade de adotar modelos de programação especializados para obter os benefícios da confidencialidade em um TEE. Os contêineres confidenciais nas Instâncias de Contêiner do Azure protegem os dados em uso e criptografam os dados que estão sendo usados na memória. As Instâncias de Contêiner do Azure ampliam esse recurso por meio de políticas de execução verificáveis e raiz de hardware verificável de garantias de confiança por meio de atestado de convidado.

Captura de ecrã de um grupo de contentores confidencial em Instâncias de Contentores do Azure.

Recursos de contêineres confidenciais em instâncias de contêiner do Azure

Aplicações de elevação e mudança

Os clientes podem levantar e mudar seus aplicativos Linux em contêineres ou construir novos aplicativos de computação confidenciais sem a necessidade de adotar modelos de programação especializados para alcançar os benefícios da confidencialidade em um TEE.

Ambiente de execução confiável baseado em hardware

Os contêineres confidenciais nas Instâncias de Contêiner do Azure são implantados em um grupo de contêineres com um TEE isolado do Hyper-V, que inclui uma chave de criptografia de memória gerada e gerenciada por um processador compatível com AMD SEV-SNP. Os dados em uso na memória são criptografados com essa chave para ajudar a fornecer proteção contra repetição de dados, corrupção, remapeamento e ataques baseados em aliasing.

Políticas de execução verificáveis

Os contêineres confidenciais nas Instâncias de Contêiner do Azure podem ser executados com políticas de execução verificáveis que permitem que os clientes tenham controle sobre quais softwares e ações podem ser executados no TEE. Essas políticas de execução ajudam a proteger contra agentes mal-intencionados que criam modificações inesperadas de aplicativos que podem potencialmente vazar dados confidenciais. Os clientes criam políticas de execução por meio de ferramentas fornecidas e as provas criptográficas verificam as políticas.

Atestado remoto de convidado

Os contêineres confidenciais no ACI fornecem suporte para atestado de convidado remoto, que é usado para verificar a confiabilidade do seu grupo de contêineres antes de criar um canal seguro com uma terceira parte confiável. Os grupos de contêineres podem gerar um relatório de atestado de hardware SNP, que o hardware assina e que inclui informações sobre o hardware e o software. O serviço de Atestado do Microsoft Azure pode verificar esse atestado de hardware gerado por meio de um aplicativo sidecar de código aberto ou por outro serviço de atestado antes que quaisquer dados confidenciais sejam liberados para o TEE.

Políticas de aplicação de computação confidencial

Os contêineres confidenciais oferecem suporte à integridade e ao atestado no nível do contêiner por meio de políticas de aplicação de computação confidencial (CCE). As políticas de imposição de computação confidencial prescrevem os componentes que podem ser executados dentro do grupo de contêineres, que o tempo de execução do contêiner impõe.

Extensão confcom da CLI do Azure

A extensão confcom da CLI do Azure permite que os clientes gerem políticas de imposição de computação confidenciais usando um modelo ARM como entrada e fornecendo uma política de cadeia de caracteres base 64 como saída. Essa saída é incluída na definição do grupo de contêineres para impor quais componentes podem ser executados. Para obter mais informações sobre como criar políticas de execução de computação confidenciais, consulte Extensão confcom da CLI do Azure.

Liberação segura de chaves e sidecars do sistema de arquivos criptografados

Os contêineres confidenciais nas Instâncias de Contêiner do Azure integram-se a dois sidecars de código aberto para dar suporte à funcionalidade confidencial dentro do grupo de contêineres. Você pode encontrar esses sidecars e mais informações no repositório confidencial de sidecars.

Carro lateral de liberação de chave segura

Os contêineres confidenciais nas Instâncias de Contêiner do Azure fornecem um contêiner de código aberto sidecar para atestado e liberação segura de chaves. Esse sidecar instancia um servidor Web, que expõe uma API REST para que outros contêineres possam recuperar um relatório de atestado de hardware ou um token de atestado do Microsoft Azure por meio do método POST. O sidecar integra-se com o cofre da Chave do Azure para liberar uma chave para o grupo de contêineres após a conclusão da validação.

Sidecar do sistema de ficheiros encriptado

Os contêineres confidenciais nas Instâncias de Contêiner do Azure fornecem um contêiner sidecar para montar um sistema de arquivos criptografado remoto carregado anteriormente no Armazenamento de Blobs do Azure. O contêiner do sidecar recupera de forma transparente o atestado de hardware e a cadeia de certificados endossando a chave de assinatura do atestado. Em seguida, ele solicita que o Atestado do Microsoft Azure autorize um token de atestado, que é necessário para liberar com segurança a chave de criptografia do sistema de arquivos do HSM gerenciado. A chave é liberada para o contêiner do sidecar somente se a autoridade esperada assinou o token de atestado e as declarações de atestado corresponderem à política de liberação da chave. O contêiner sidecar usa de forma transparente a chave para montar o sistema de arquivos criptografado remoto; Esse processo preserva a confidencialidade e a integridade do sistema de arquivos em qualquer operação de um contêiner que esteja sendo executado dentro do grupo de contêineres.

Cenários

Salas limpas de dados para análise de dados de várias partes e treinamento de aprendizado de máquina

Transações comerciais e colaborações em projetos geralmente exigem o compartilhamento de dados confidenciais entre várias partes. Esses dados podem incluir informações pessoais, informações financeiras e registros médicos, que precisam ser protegidos contra acesso não autorizado. Os contêineres confidenciais nas Instâncias de Contêiner do Azure fornecem os recursos necessários (TEEs baseados em hardware, atestado remoto) para que os clientes processem dados de treinamento de várias fontes sem expor os dados de entrada a outras partes. Esses recursos permitem que as organizações obtenham mais valor de seus conjuntos de dados ou de seus parceiros, mantendo o controle sobre o acesso às informações confidenciais. Essa oferta torna os contêineres confidenciais nas Instâncias de Contêiner do Azure ideais para cenários de análise de dados de várias partes, como aprendizado de máquina confidencial.

Captura de tela de um modelo de treinamento de ML em Instâncias de Contêiner do Azure.

Inferência confidencial

O ACI oferece implantações rápidas e fáceis, alocação flexível de recursos e preços de pagamento por uso, o que o posiciona como uma ótima plataforma para cargas de trabalho de inferência confidenciais. Com contêineres confidenciais em Instâncias de Contêiner do Azure, os desenvolvedores de modelos e proprietários de dados podem colaborar enquanto protegem a propriedade intelectual do desenvolvedor do modelo e mantêm os dados usados para inferência seguros e privados. Confira um exemplo de implantação de inferência confidencial usando contêineres confidenciais em Instâncias de Contêiner do Azure.

Captura de ecrã de um modelo de inferência de ML em Instâncias de Contentor do Azure.

Cenários Não Suportados

  • A extensão confcom da CLI do Azure deve gerar as políticas de imposição de computação confidenciais.
  • Não é possível criar manualmente políticas de aplicação de computação confidencial.

Recursos

Passos Seguintes