Java パッケージを手動でスキャンする
このクイックスタートでは、コンテナ イメージを pull し、オンデマンド スキャンで手動でスキャンして、システム パッケージと Maven パッケージで特定された脆弱性を取得する方法について説明します。このクイックスタートでは、Cloud Shell と Alpine イメージの例を使用します。
始める前に
- アカウントにログインします。 Google Cloud を初めて使用する場合は、 アカウントを作成して、実際のシナリオで Google プロダクトのパフォーマンスを評価してください。 Google Cloud新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
-
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 role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the On-Demand Scanning API.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
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 role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the On-Demand Scanning API.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.
イメージをダウンロードしてスキャンする
プロジェクトで Cloud Shell を開きます。
これにより、このガイドに沿って進めるために必要なすべてのツールを備えたターミナルが開きます。
docker を使用してコンテナ イメージを pull します。
docker pull jenkins:2.60.3-alpineスキャンを実行します。
gcloud artifacts docker images scan jenkins:2.60.3-alpine --additional-package-types=MAVENこれにより、スキャン プロセスがトリガーされ、完了するとスキャン名が返されます。
✓ 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
スキャン名(出力の
scanの値)を使用して、スキャン結果を取得します。gcloud artifacts docker images list-vulnerabilities \ projects/my-project/locations/us/scans/893c91ce-7fe6-4f1a-a69a-d6ca1b465160出力には、Maven パッケージと Linux パッケージの脆弱性のリストが含まれています。Maven パッケージの脆弱性は、フィールド
packageType:MAVENで識別できます。
クリーンアップ
このページで使用したリソースについて、 Google Cloud アカウントに課金されないようにするには、 次の手順を実施します。
このガイド用に新しいプロジェクトを作成した場合は、プロジェクトを削除できます。コンソールで [設定] ページ([IAM と管理] の下)を開きます。 Google Cloud
[プロジェクトの選択] をクリックします。
削除するプロジェクトを選択して、[開く] をクリックします。
[シャットダウン] をクリックします。
プロジェクト ID を入力して、[シャットダウン] をクリックします。