Nesta página, descrevemos os serviços e recursos do Google Cloud que ajudam você proteger seus artefatos.
Criptografia em repouso
Por padrão, o Google Cloud automaticamente criptografa os dados quando em repouso por meio de chaves de criptografia gerenciadas pelo Google. Se você tiver requisitos regulatórios ou de compliance específicos relacionados às chaves que protegem seus dados, crie repositórios criptografados com chaves de criptografia gerenciadas pelo cliente (CMEKs).
Controle de acesso
Por padrão, todos os repositórios são particulares. Siga o princípio de segurança privilégio mínimo e concede apenas as permissões mínimas que exigidos por usuários e contas de serviço.
Restringir downloads de artefatos
É possível restringir os downloads de artefatos com regras de download. As regras de download permitem ou negam downloads de artefatos dos seus repositórios e pacotes. Também é possível definir condições para que a regra seja aplicada a tags específicas. ou versões diferentes.
Para cada repositório no projeto, é possível ter uma regra de download no nível do repositório e uma regra de download por pacote. Quando um cliente tenta fazer um download, o Artifact Registry primeiro verifica se há uma regra de download no pacote do artefato. Se uma regra não existir ou se as condições dela não se aplicarem ao artefato, o Artifact Registry vai verificar se há uma regra no repositório.
Por exemplo, é possível criar uma regra para que o repositório negue todos os downloads e, em seguida, criar uma regra para um pacote para permitir downloads desse pacote específico. A regra no nível do pacote tem precedência, e apenas artefatos pertencentes a esse pacote podem ser transferidos por download do repositório.
As regras de download estão disponíveis em todos os modos de repositório e para os seguintes formatos de repositório:
- Docker
- Go
- Maven
- npm
- Python
Prevenção a ataques de exportação de dados
Para evitar a exfiltração de dados, use o VPC Service Controls para colocar o Artifact Registry e outros serviços do Google Cloud em um perímetro de segurança de rede.
Verificação de vulnerabilidades
Análise de artefatos verifica se há vulnerabilidades de segurança nas imagens de contêiner pacotes monitorados publicamente.
As seguintes opções estão disponíveis:
- Verificação de vulnerabilidades automática
- Quando ativado, esse recurso identifica vulnerabilidades do pacote no seu imagens de contêiner. As imagens são verificadas quando são enviadas para o Artifact Registry, e os dados são monitorados continuamente para encontrar novas vulnerabilidades por até 30 dias após o envio da imagem.
- API On-Demand Scanning
- Quando ativado, é possível verificar manualmente imagens locais ou armazenadas no Artifact Registry. Esse recurso ajuda a detectar e resolver vulnerabilidades no início do pipeline de compilação. Por exemplo, é possível usar o Cloud Build para verificar uma imagem após a criação e, em seguida, bloquear o upload para o Artifact Registry se a verificação detectar vulnerabilidades em um nível de gravidade especificado. Se você também ativou a verificação automática de vulnerabilidades, o Artifact Analysis e verifica as imagens enviadas ao registro.
Política de implantação
Use a autorização binária para configurar um política que o serviço aplica quando é feita uma tentativa de implantar um imagem de contêiner para um dos ambientes compatíveis com o Google Cloud.
Por exemplo, é possível configurar a Autorização binária para permitir implantações somente se uma imagem for assinada para conformidade com uma política de verificação de vulnerabilidade.
Remover imagens não usadas
Remova imagens de contêiner não utilizadas para reduzir os custos de armazenamento e mitigar os riscos de usar softwares mais antigos. Há várias ferramentas disponíveis para ajudar essa tarefa, incluindo gcr-cleaner. A ferramenta gcr-cleaner não é um produto oficial do Google.
Como integrar a segurança aos processos
Integrar objetivos de segurança da informação no trabalho diário pode ajudar a aumentar desempenho de entrega de software e criar sistemas mais seguros. Essa ideia também é conhecida como mudança para a esquerda, porque as preocupações, incluindo questões de segurança, são tratadas anteriormente no ciclo de vida do desenvolvimento de software (isto é, deixadas em um diagrama de programação da esquerda para a direita). Mudar para a esquerda na segurança é uma das capacidades identificadas Programa de pesquisa DORA State of DevOps.
Para saber mais, faça o seguinte:
- Leia sobre o recurso Como integrar a segurança aos processos.
- Leia o whitepaper Shifting left on security, que descreve responsabilidades, práticas, processos, ferramentas e técnicas que aumentam a confiança no ciclo de vida de desenvolvimento de software (SDLC, na sigla em inglês) e reduzem as preocupações com o risco de segurança.
Considerações para repositórios públicos
Considere cuidadosamente os seguintes casos:
- Uso de artefatos de fontes públicas
- Como tornar seus próprios repositórios do Artifact Registry públicos
Como usar artefatos de fontes públicas
As seguintes origens públicas de artefatos fornecem ferramentas que você pode usar ou dependências para seus builds e implantações:
- GitHub
- Docker Hub
- PyPI
- npm public Registry (em inglês)
No entanto, sua organização pode ter restrições que afetam o uso dos artefatos públicos. Exemplo:
- Você quer controlar o conteúdo da cadeia de suprimentos de software.
- Você não quer depender de um repositório externo.
- Você quer controlar estritamente as vulnerabilidades em seu ambiente de produção.
- Você quer o mesmo sistema operacional de base em todas as imagens.
Considere as seguintes abordagens para proteger sua cadeia de suprimentos de software:
- Configure builds automáticos para que os artefatos tenham conteúdo conhecido e consistente. É possível usar o Cloud Build acionadores de build ou outros ferramentas de integração contínua.
- Use imagens de base padronizadas. O Google fornece algumas imagens de base que você pode usar.
- Enfrente as vulnerabilidades nos seus artefatos. Você pode usar API On-Demand Scanning para verificar vulnerabilidades em imagens de contêiner antes de armazená-las em o Artifact Registry. O Artifact Analysis também pode verificar contêineres que você envia para o Artifact Registry.
- Aplique seus padrões internos nas implantações de imagem. A autorização binária aplica a implantação de imagens de contêiner em ambientes do Google Cloud compatíveis.
Repositórios públicos do Artifact Registry
Para tornar público um repositório do Artifact Registry, conceda
o papel Leitor do Artifact Registry para a identidade allUsers
.
Se todos os seus usuários tiverem contas do Google Cloud, você poderá limitar o acesso
para usuários autenticados com a identidade allAuthenticatedUsers
.
Considere as diretrizes a seguir antes de criar um Artifact Registry repositório público:
- Verifique se todos os artefatos armazenados no repositório podem ser compartilhados publicamente e não exponha credenciais, dados pessoais ou dados confidenciais.
- Por padrão, os projetos têm uma cota por usuário ilimitada. Para evitar abusos, limite a cota por usuário no seu projeto.
- Você recebe cobranças pela transferência de dados de rede quando os usuários fazem o download de artefatos. Se você espera muito download pela Internet considere os custos associados.
Orientação para aplicativos da Web
- Os 10 principais do OWASP lista os principais riscos de segurança de aplicativos da Web segundo o Programa Open Web Application Security Project (OSWAP).
Orientações para contêineres
- Práticas recomendadas do Docker inclui recomendações para criar imagens.
O Center for Internet Security (CIS) tem um comparativo de mercado do Docker para avaliar a segurança de um contêiner do Docker.
O Docker fornece um script de código aberto chamado Docker Bench for Security. Você pode usar o script para validar um contêiner do Docker em execução no comparativo de mercado do CIS do Docker.
O Docker Bench For Security pode ajudar você a verificar muitos itens no comparativo de mercado do CIS do Docker, mas nem todos os itens são verificáveis com o script. Por exemplo, o script não pode verificar se o host do contêiner está mais protegido ou se a imagem do contêiner inclui dados pessoais. Analise todos os itens no comparativo de mercado e identifique aqueles que podem precisar de verificação adicional.
A seguir
Saiba mais sobre o gerenciamento de dependências