Halaman ini menjelaskan cara mengupload file software bill of materials (SBOM) ke Cloud Storage untuk membantu melacak dan membuktikan komponen image container yang Anda simpan di Artifact Registry.
Untuk mengetahui informasi tentang harga Cloud Storage, lihat Harga.
Sebelum memulai
-
Login ke Akun Google Anda.
Jika Anda belum memilikinya, Daftar untuk membuat akun baru.
-
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 Artifact Registry, Container Analysis APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
Instal Google Cloud CLI.
-
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
-
Untuk melakukan inisialisasi gcloud CLI, jalankan perintah berikut:
gcloud init -
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 Artifact Registry, Container Analysis APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
Instal Google Cloud CLI.
-
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
-
Untuk melakukan inisialisasi gcloud CLI, jalankan perintah berikut:
gcloud init - Memiliki repositori Docker di Artifact Registry dengan image container yang dijelaskan oleh SBOM Anda. Jika Anda belum memahami Artifact Registry, lihat panduan memulai Docker.
- Memiliki file SBOM yang siap diupload dalam salah satu format yang didukung.
Peran yang diperlukan
Untuk mendapatkan izin yang Anda perlukan untuk membuat dan mengelola bucket Cloud Storage dan file SBOM, minta administrator Anda untuk memberi Anda peran IAM berikut pada project:
-
Jika Anda menggunakan bucket Cloud Storage default, untuk mengelola bucket penyimpanan:
Storage Admin(
roles/storage.admin) -
Jika Anda menentukan bucket Cloud Storage, untuk mengelola bucket penyimpanan:
Storage Object Admin(
roles/storage.objectAdmin) -
Jika catatan untuk referensi SBOM sudah ada:
Container Analysis Notes Attacher (
roles/containeranalysis.notes.attacher) -
Untuk membuat catatan baru untuk kemunculan referensi SBOM di project saat ini:
Container Analysis Notes Editor(
(roles/containeranalysis.notes.editor) -
Untuk membuat kemunculan referensi SBOM:
Container Analysis Occurrences Editor(
roles/containeranalysis.occurrences.editor)
Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses ke project, folder, dan organisasi.
Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.
Format yang didukung
File SBOM Anda harus berupa file JSON dalam salah satu format berikut:
- Software Package Data Exchange (SPDX) versi 2.2 atau 2.3
- CycloneDX versi 1.4 atau 1.5
Mengupload SBOM
Gunakan perintah berikut untuk mengupload SBOM Anda:
gcloud artifacts sbom load /
--source SOURCE /
--uri URI
Dengan:
- SOURCE: jalur ke file SBOM yang akan diupload.
- URI: URI untuk image Docker yang dijelaskan oleh file SBOM. Gambar dapat berupa format tag atau format ringkasan. Gambar yang disediakan dalam format tag akan diubah menjadi format ringkasan.
Flag opsional
--destination: menentukan bucket Cloud Storage yang akan digunakan, bukan bucket default.--kms-key-version: menyediakan versi kunci untuk menandatangani payload kemunculan referensi SBOM. Anda dapat menggunakan kunci ini untuk memverifikasi asal SBOM.
Misalnya, perintah berikut mengupload file JSON my-sbom.bom.json yang dibuat dari image yang diberi tag us-east1-docker.pkg.dev/my-image-repo/my-image, dan menandatangani kemunculan referensi SBOM dengan versi kunci KMS yang diakhiri dengan my-key/cryptoKeyVersions/1.
gcloud artifacts sbom load /
--source=my-sbom.bom.json
--uri=us-east1-docker.pkg.dev/my-image-repo/my-image
--kms-key-version=projects/my-project/locations/us/keyRings/my-key-ring/cryptoKeys/my-key/cryptoKeyVersions/1
Perintah berikut mengupload file JSON my-sbom.spdx.json yang terkait dengan ringkasan image my-local-image@sha256:abcxyz, dan menyimpan file di bucket Cloud Storage gs://my-sbom-bucket.
gcloud artifacts sbom load /
--source=my-sbom.spdx.json /
--uri=my-local-image@sha256:abcxyz /
--destination=gs://my-sbom-bucket
Artifact Analysis mengupload SBOM Anda ke Cloud Storage dan membuat kemunculan referensi SBOM.
Anda dapat melihat SBOM menggunakan Google Cloud konsol atau gcloud CLI. Jika ingin menemukan bucket Cloud Storage yang berisi SBOM, Anda harus menelusuri SBOM menggunakan gcloud CLI.