Verificar pacotes Java automaticamente
Aprenda a ativar a verificação automática, enviar uma imagem de contêiner no Artifact Registry e conferir uma lista de vulnerabilidades encontradas na imagem.
O Artifact Analysis verifica vulnerabilidades sempre que uma imagem é enviada ao Artifact Registry. Os administradores de plataforma e os desenvolvedores de aplicativos podem usar esse recurso de verificação automática para ajudar a identificar riscos no pipeline de entrega de software.
Este guia de início rápido usa um pacote simples disponível publicamente para demonstrar um tipo de verificação de pacote. Por padrão, o Artifact Analysis verifica vulnerabilidades em vários tipos de pacote depois que você ativa a API de verificação. Os tipos de pacote compatíveis incluem: SO, Go, Java (Maven), Python e Node.js (npm).
Antes de começar
- Faça login na sua Google Cloud conta do. Se você começou a usar o Google Cloudagora, crie uma conta para avaliar o desempenho dos nossos produtos em situações reais. Clientes novos também recebem US $300 em créditos para executar, testar e implantar cargas de trabalho.
-
Instale a Google Cloud CLI.
-
Ao usar um provedor de identidade (IdP) externo, primeiro faça login na CLI gcloud com sua identidade federada.
-
Para inicializar a CLI gcloud, execute o seguinte comando:
gcloud init -
Crie ou selecione um Google Cloud projeto.
Funções necessárias para selecionar ou criar um projeto
- Selecionar um projeto: a seleção de um projeto não exige um papel específico do IAM. Você pode selecionar qualquer projeto em que tenha recebido um papel.
-
Criar um projeto: para criar um projeto, você precisa do papel Criador de projetos
(
roles/resourcemanager.projectCreator), que contém aresourcemanager.projects.createpermissão. Saiba como conceder papéis.
-
Crie um Google Cloud projeto:
gcloud projects create PROJECT_ID
Substitua
PROJECT_IDpor um nome para o Google Cloud projeto que você está criando. -
Selecione o Google Cloud projeto que você criou:
gcloud config set project PROJECT_ID
Substitua
PROJECT_IDpelo nome do Google Cloud projeto.
-
Verifique se o faturamento está ativado para o Google Cloud projeto.
Ative as APIs Artifact Registry e Container Scanning:
Funções necessárias para ativar APIs
Para ativar as APIs, é necessário ter a permissão
serviceusage.services.enable. Se você criou o projeto, provavelmente já tem essa permissão pelo papel Proprietário (roles/owner). Caso contrário, você pode receber essa permissão pelo papel Administrador de uso do serviço (roles/serviceusage.serviceUsageAdmin). Saiba como conceder papéis.gcloud services enable containerscanning.googleapis.com
artifactregistry.googleapis.com -
Instale a Google Cloud CLI.
-
Ao usar um provedor de identidade (IdP) externo, primeiro faça login na CLI gcloud com sua identidade federada.
-
Para inicializar a CLI gcloud, execute o seguinte comando:
gcloud init -
Crie ou selecione um Google Cloud projeto.
Funções necessárias para selecionar ou criar um projeto
- Selecionar um projeto: a seleção de um projeto não exige um papel específico do IAM. Você pode selecionar qualquer projeto em que tenha recebido um papel.
-
Criar um projeto: para criar um projeto, você precisa do papel Criador de projetos
(
roles/resourcemanager.projectCreator), que contém aresourcemanager.projects.createpermissão. Saiba como conceder papéis.
-
Crie um Google Cloud projeto:
gcloud projects create PROJECT_ID
Substitua
PROJECT_IDpor um nome para o Google Cloud projeto que você está criando. -
Selecione o Google Cloud projeto que você criou:
gcloud config set project PROJECT_ID
Substitua
PROJECT_IDpelo nome do Google Cloud projeto.
-
Verifique se o faturamento está ativado para o Google Cloud projeto.
Ative as APIs Artifact Registry e Container Scanning:
Funções necessárias para ativar APIs
Para ativar as APIs, é necessário ter a permissão
serviceusage.services.enable. Se você criou o projeto, provavelmente já tem essa permissão pelo papel Proprietário (roles/owner). Caso contrário, você pode receber essa permissão pelo papel Administrador de uso do serviço (roles/serviceusage.serviceUsageAdmin). Saiba como conceder papéis.gcloud services enable containerscanning.googleapis.com
artifactregistry.googleapis.com
Criar um repositório do Docker no Artifact Registry
Crie um repositório do Docker para armazenar a imagem de amostra deste guia de início rápido.
Abra a página Repositórios no Google Cloud console.
Clique em Criar repositório.
Na página Criar repositório, insira as seguintes configurações:
- Nome:
quickstart-docker-repo - Formato: Docker
- Modo: padrão
- Tipo de local: região
- Região:
us-central1
- Nome:
Clique em Criar.
A página Repositórios aparece. O repositório quickstart-docker-repo é adicionado à lista de repositórios.
Configurar a autenticação
Antes de enviar ou extrair imagens com o Artifact Registry, é necessário configurar o Docker para usar a Google Cloud CLI e autenticar solicitações ao Artifact Registry.
No Cloud Shell ou no shell local, configure a autenticação para repositórios do Docker na região us-central1:
gcloud auth configure-docker us-central1-docker.pkg.dev
Receber um pacote
Mude para um diretório em que você quer salvar a imagem do contêiner.
Copie uma imagem para o diretório local. Por exemplo, você pode usar o Docker para extrair a imagem mais recente do Jenkins de Docker Hub.
docker pull jenkins:2.60.3-alpine
Marcar o pacote com um nome de repositório
Quando você quiser enviar um pacote para o Artifact Registry, será necessário configurar o comando docker push para enviar a imagem a um local específico.
Execute o comando a seguir para marcar a imagem como quickstart-image:tag1:
docker tag jenkins:2.60.3-alpine \ us-central1-docker.pkg.dev/PROJECT/quickstart-docker-repo/quickstart-image:tag1
Onde
- PROJECT é o ID do seu Google Cloud
projeto.
Se o ID do projeto tiver dois pontos (
:), consulte Projetos com escopo de domínio. us-central1é a região do repositório do Artifact Registry.docker.pkg.devé o nome do host dos repositórios do Docker.quickstart-imageé o nome da imagem que você quer usar no repositório. O nome da imagem pode ser diferente do nome da imagem local.tag1é uma tag que você está adicionando à imagem Docker. Se você não especificou uma tag, o Docker aplicará a tag padrãolatest.
Envie a imagem para o Artifact Registry
O Artifact Analysis verifica automaticamente novas imagens quando elas são enviadas ao Artifact Registry.
Para enviar a imagem ao repositório do Docker no Artifact Registry, execute o seguinte comando:
docker push us-central1-docker.pkg.dev/PROJECT/quickstart-docker-repo/quickstart-image:tag1
Substitua PROJECT por seu Google Cloud
ID do projeto.
Se o ID do projeto tiver dois pontos (:), consulte
Projetos com escopo de domínio.
Conferir resultados da verificação de vulnerabilidades
Limpar
Para evitar cobranças na conta do Google Cloud pelos recursos usados nesta página, exclua o Google Cloud projeto do e os recursos.
Se você criou um novo projeto para este guia, agora poderá excluí-lo.- No Google Cloud console, acesse a página Gerenciar recursos.
- Na lista de projetos, selecione o projeto que você quer excluir e clique em Excluir.
- Na caixa de diálogo, digite o ID do projeto e clique em Desligar para excluir o projeto.