このドキュメントでは、コンテナ イメージの依存関係を一覧表示するソフトウェア部品構成表(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.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
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.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
- Artifact Registry に Docker リポジトリを作成し、コンテナ イメージをリポジトリに push します。Artifact Registry に習熟されていない場合は、Docker クイックスタートをご覧ください。
- URI は、SBOM ファイルが記述する Artifact Registry イメージ URI です(
us-east1-docker.pkg.dev/my-image-repo/my-image
と同様)。画像は、タグ形式またはダイジェスト形式のいずれかにできます。タグ形式で指定されたイメージは、ダイジェスト形式に解決されます。
必要なロール
Cloud Storage バケットの管理と SBOM ファイルのアップロードに必要な権限を取得するには、プロジェクトに対するストレージ管理者 (roles/storage.admin
)IAM ロールを付与するよう管理者に依頼してください。ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。
SBOM ファイルを生成する
SBOM ファイルを生成するには、次のコマンドを使用します。
gcloud artifacts sbom export --uri=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 を無効にして、脆弱性スキャンに対する課金を停止する必要があります。