Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Por que a integridade e a autenticidade são importantes
Imagens de contêiner e outros artefatos OCI (como SBOMs, gráficos Helm, pacotes de configuração ou modelos de IA) são componentes-chave dos aplicativos modernos nativos da nuvem. Esses artefatos fluem através da cadeia de suprimentos de software, desde a criação até a implantação: construídos por editores, armazenados em registros e consumidos em pipelines de CI/CD ou ambientes de produção.
Sem salvaguardas, os atacantes poderiam:
- Altere artefatos enquanto eles são armazenados ou transferidos.
- Troque imagens ou gráficos confiáveis por imagens maliciosas.
- Insira imagens de base não verificadas ou dependências em compilações.
A integridade garante que o artefato usado seja exatamente o mesmo que foi publicado.
A autenticidade garante que o artefato realmente veio do editor esperado.
Juntos, eles são essenciais para proteger a cadeia de suprimentos e prevenir ataques.
Como a assinatura e a verificação ajudam
Para fornecer integridade e autenticidade, os artefatos OCI (incluindo imagens de contêiner) podem ser assinados depois de criados, e essas assinaturas podem ser verificadas antes que os artefatos sejam consumidos.
- A assinatura produz assinaturas criptográficas que vinculam a identidade de um editor a um descritor de artefato, incluindo o resumo.
- A verificação verifica se a assinatura é válida, se a identidade do editor é confiável e se o artefato não foi alterado.
Se a verificação falhar, os consumidores podem impedir que o artefato seja transferido, utilizado em compilações ou implementado.
Projeto Notarial e Notação
Notary Project é um projeto de código aberto que fornece assinatura e verificação para artefatos OCI, incluindo imagens de contêiner, SBOMs, gráficos Helm, modelos de IA e muito mais.
Notação é a ferramenta do Projeto Notarial para assinar e verificar artefatos OCI. A notação integra-se com vários fornecedores chave, incluindo:
- Azure Key Vault (AKV): Os usuários gerenciam seu próprio ciclo de vida do certificado, incluindo emissão, rotação e expiração. Isso proporciona forte controle e flexibilidade para organizações que desejam manter o gerenciamento direto de seus certificados.
- Assinatura confiável: Fornece gerenciamento de certificados sem toque e emite certificados de curta duração automaticamente. Isso simplifica a experiência de assinatura, mantendo fortes garantias de segurança.
As organizações podem escolher AKV para controle total ou adotar a Assinatura Confiável para uma experiência simplificada.
Cenários para assinatura e verificação
1. O publicador de imagens assina imagens em pipelines de CI/CD, como GitHub Actions
Um publicador de imagens de contêiner cria uma imagem e a assina como parte do seu fluxo de trabalho do GitHub Actions antes de carregá-la para o Registro de Contêiner do Azure.
- Garante que os consumidores a jusante possam verificar a origem da imagem.
- Adiciona metadados de confiança à cadeia de suprimentos no momento da compilação.
2. Imagem que o consumidor verifica durante a implantação no AKS
Ao implantar cargas de trabalho no Serviço Kubernetes do Azure (AKS), uma política de cluster pode impor que apenas imagens assinadas e verificadas tenham permissão para serem executadas.
- Impede a implantação de imagens não autorizadas ou adulteradas.
- Garante que as cargas de trabalho em tempo de execução tenham origem em editores confiáveis.
3. O consumidor de imagem verifica as imagens de base em pipelines de CI/CD
Antes de criar uma imagem de aplicativo, os desenvolvedores podem configurar pipelines (por exemplo, Ações do GitHub) para verificar as assinaturas das imagens base.
- Protege as compilações contra a herança de vulnerabilidades ou códigos maliciosos.
- Impõe o uso apenas de componentes upstream confiáveis em compilações de aplicativos.
4. Verificação de outros artefatos OCI
Além das imagens de contêiner, o mesmo processo se aplica a outros artefatos armazenados em um registro OCI:
- SBOMs: verifique a SBOM assinada de uma imagem antes de usá-la para análise de segurança.
- Helm charts: Verifique os charts antes de instalá-los em clusters do Kubernetes.
- Pacotes de configuração ou modelos de IA: verifique se eles se originam do editor pretendido antes de integrar aos sistemas.
Próximos passos
Esta visão geral apresenta a importância de assinar e verificar imagens de contêiner e outros artefatos OCI. Cada um dos seguintes cenários tem a sua própria orientação dedicada:
Assinar com AKV
Assinar com a Notation CLI:
- Assinar imagens de contentor com Notação e Azure Key Vault usando um certificado autoassinado
- Assinar imagens de contêiner com Notation e Azure Key Vault usando um certificado emitido por uma CA
Iniciando sessão no fluxo de trabalho do GitHub:
Assinando com assinatura confiável
Assinar com a Notation CLI:
Iniciando sessão no fluxo de trabalho do GitHub:
Verification
Verificação no fluxo de trabalho do GitHub:
- Verificar imagens de contêiner no fluxo de trabalho do GitHub com Notação e Azure Key Vault
- Verificar imagens de contêiner no fluxo de trabalho do GitHub com notação e assinatura confiável (visualização)
Verificação no AKS: