このドキュメントでは、コンテナ イメージの依存関係を一覧表示するソフトウェア部品構成表(SBOM)を作成して保存する方法について説明します。
コンテナ イメージを Artifact Registry に保存し、Artifact Analysis で脆弱性をスキャンすると、Google Cloud CLI を使用して SBOM を生成できます。
脆弱性スキャンの使用方法については、自動スキャンと料金をご覧ください。
Artifact Analysis は SBOM を Cloud Storage に保存します。Cloud Storage の費用の詳細については、料金をご覧ください。
Container Registry (非推奨)リポジトリはサポートされていません。Container Registry からの移行方法を確認する。
始める前に
-
Sign in to your Google Account.
If you don't already have one, sign up for a new account.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Artifact Registry, Container Analysis, Container Scanning APIs.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Artifact Registry, Container Analysis, Container Scanning APIs.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
- Artifact Registry に Docker リポジトリを作成し、コンテナ イメージをリポジトリに push します。Artifact Registry に慣れていない場合は、Docker のクイックスタートをご覧ください。
必要なロール
Cloud Storage バケットの管理と SBOM ファイルのアップロードに必要な権限を取得するには、プロジェクトに対するストレージ管理者 (roles/storage.admin
)IAM ロールを付与するよう管理者に依頼してください。ロールの付与については、プロジェクト、フォルダ、組織へのアクセスを管理するをご覧ください。
必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。
SBOM ファイルを生成する
SBOM ファイルを生成するには、次のコマンドを使用します。
gcloud artifacts sbom export --uri=URI
場所
- URI は、
us-east1-docker.pkg.dev/my-image-repo/my-image
と同様に、SBOM ファイルが記述する Artifact Registry イメージの URI です。画像は、タグ形式またはダイジェスト形式のいずれかです。タグ形式で指定された画像は、ダイジェスト形式に解決されます。
Artifact Analysis は、SBOM を Cloud Storage に保存します。
SBOM は、Google Cloud コンソールまたは gcloud CLI を使用して表示できます。SBOM を含む Cloud Storage バケットを見つけるには、gcloud CLI を使用して SBOM を検索する必要があります。
脆弱性スキャンなしで SBOM を生成する
SBOM を生成したいが、プロジェクトの脆弱性スキャンを継続したくない場合は、イメージを Artifact Registry に push する前に Container Scanning API を有効にすると、SBOM をエクスポートできます。イメージが Artifact Registry に push され、SBOM がエクスポートされたら、追加の脆弱性スキャンの料金が発生しないように Container Scanning API を無効にする必要があります。