Procure pacotes Java manualmente

Este início rápido mostra como extrair uma imagem de contentor, analisá-la manualmente com a análise a pedido e obter vulnerabilidades identificadas para pacotes do sistema e do Maven. Para seguir este início rápido, vai usar a Cloud Shell e uma imagem Alpine de exemplo.

Antes de começar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the On-Demand Scanning API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the On-Demand Scanning API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  8. Transfira e analise uma imagem

    1. Abra um Cloud Shell no seu projeto.

      Abra o Cloud Shell

      Esta ação abre um terminal com todas as ferramentas necessárias para seguir este guia.

    2. Use o docker para extrair a imagem do contentor:

      docker pull jenkins:2.60.3-alpine
      
    3. Execute a análise:

      gcloud artifacts docker images scan jenkins:2.60.3-alpine --additional-package-types=MAVEN
      

      Isto aciona o processo de análise e devolve o nome da análise quando terminar:

      ✓ Scanning container image 
        ✓ Locally extracting packages and versions from local container image
        ✓ Remotely initiating analysis of packages and versions
        ✓ Waiting for analysis operation to complete [projects/my-project/locations/us/operations/1a6fd941-b997-4e5f-ba4f-6351f30e7dad]
      Done.
      
      done: true
      metadata:
        '@type': type.googleapis.com/google.cloud.ondemandscanning.v1.AnalyzePackagesMetadata
        createTime: '2021-01-26T13:43:53.112123Z'
        resourceUri: jenkins:2.60.3-alpine
      name: projects/my-project/locations/us/operations/1a6fd941-b99f-4eaf-ba4f-6e5af30e7dad
      response:
        '@type': type.googleapis.com/google.cloud.ondemandscanning.v1.AnalyzePackagesResponse
        scan: projects/my-project/locations/us/scans/893c91ce-7fe6-4f1a-a69a-d6ca1b465160
      
    4. Use o nome da análise, o valor de scan da saída, para obter os resultados da análise:

      gcloud artifacts docker images list-vulnerabilities \
      projects/my-project/locations/us/scans/893c91ce-7fe6-4f1a-a69a-d6ca1b465160
      

      O resultado contém uma lista de vulnerabilidades de pacotes Maven e Linux. As vulnerabilidades dos pacotes Maven podem ser identificadas pelo campo packageType:MAVEN.

    Limpar

    Para evitar incorrer em cobranças na sua Google Cloud conta pelos recursos usados nesta página, siga estes passos.

    Se criou um novo projeto para este guia, pode eliminá-lo agora.

    • Abra a página Definições (encontrada em IAM e administrador) na Google Cloud consola.

      Abra a página Definições

    • Clique em Selecionar um projeto.

    • Selecione um projeto que quer eliminar e clique em Abrir.

    • Clique em Desligar.

    • Introduza o ID do projeto e, de seguida, clique em Encerrar.

    O que se segue?