Dokumen ini menjelaskan cara mengakses catatan software bill of materials (SBOM) dan metadata dependensi terkait untuk membantu Anda memahami komponen image container yang disimpan di Artifact Registry.
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 Container Analysis, Artifact Registry 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 Container Analysis, Artifact Registry 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 SBOM yang disimpan di Cloud Storage. Lihat petunjuk tentang cara membuat SBOM.
Peran yang diperlukan
Untuk mendapatkan izin yang Anda perlukan untuk melihat data SBOM dan memfilter hasil, minta administrator untuk memberi Anda peran IAM berikut pada project:
- Container Analysis Occurrences Viewer (
roles/containeranalysis.occurrences.viewer) - Pelanggan Service Usage (
roles/serviceusage.serviceUsageConsumer) - Pembaca Artifact Registry (
roles/artifactregistry.reader) -
Untuk memverifikasi SBOM:
Storage Object Viewer (
roles/storage.objectViewer) - bucket Cloud Storage tertentu
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.
Melihat SBOM di Google Cloud konsol
Untuk melihat SBOM dan metadata dependensi terkait untuk image container yang disimpan di Artifact Registry:
Buka halaman Repositori Artifact Registry.
Halaman ini menampilkan daftar repositori Anda.
Di daftar repositori, klik nama repositori.
Halaman Detail repositori akan terbuka dan menampilkan daftar image Anda.
Di daftar image, klik nama image.
Halaman ini menampilkan daftar ringkasan image Anda.
Di daftar ringkasan image, klik nama ringkasan.
Halaman ini menampilkan baris tab dengan tab Ringkasan yang terbuka, yang menampilkan detail seperti format, lokasi, repositori, ukuran virtual, dan tag.
Di baris tab, klik tab Dependensi.
Tab dependensi akan terbuka dan menampilkan informasi berikut:
- Bagian SBOM
- Bagian Lisensi
- Daftar dependensi yang dapat difilter
SBOM
Bagian ringkasan SBOM menampilkan informasi berikut:
- File: Nama file SBOM yang dapat diklik, yang akan membuka lokasi tempat SBOM Anda disimpan di Cloud Storage.
- Jenis: Jenis standar SBOM yang digunakan, seperti Software Package Data Exchange (SPDX) atau Cyclone.
- Versi: Versi standar SBOM yang digunakan.
- Dibuat oleh: Asal data SBOM, baik yang dibuat oleh Artifact Analysis maupun diupload secara manual.
Lisensi
Bagian ringkasan Lisensi menampilkan diagram batang yang disebut Lisensi paling umum. Hal ini menunjukkan jenis lisensi yang paling sering muncul dalam informasi dependensi Anda. Saat Anda mengarahkan kursor ke batang di grafik, konsol akan menampilkan jumlah pasti untuk instance jenis lisensi tersebut.
Dependensi
Daftar dependensi menampilkan konten ringkasan image Anda, termasuk:
- Nama paket
- Versi paket
- Jenis paket
- Jenis lisensi
Anda dapat memfilter daftar dependensi menurut salah satu kategori ini.
Melihat SBOM di Cloud Build
Jika menggunakan Cloud Build, Anda dapat melihat metadata image di panel samping Insight keamanan dalam Google Cloud konsol.
Panel samping Insight keamanan memberikan ringkasan tingkat tinggi informasi keamanan build untuk artefak yang disimpan di Artifact Registry. Untuk mempelajari panel samping lebih lanjut dan cara menggunakan Cloud Build untuk membantu melindungi software supply chain Anda, lihat Melihat insight keamanan build.
Melihat SBOM dengan gcloud CLI
Gunakan
perintah gcloud artifacts sbom list
untuk menelusuri SBOM yang disimpan di Cloud Storage. Penelusuran ini berlaku untuk semua SBOM Anda di Cloud Storage, termasuk yang dibuat oleh Artifact Analysis dan yang Anda pilih untuk diupload dari sumber lain menggunakan format yang didukung.
Anda dapat menggunakan filter dengan perintah gcloud untuk mempersempit hasil dan berfokus pada SBOM yang paling relevan dengan masalah keamanan atau permintaan kepatuhan tertentu.
Misalnya, perintah berikut menunjukkan cara mendapatkan informasi tentang SBOM untuk image Docker my-image yang disimpan di Artifact Registry:
gcloud artifacts sbom list \
--resource="us-east1-docker.pkg.dev/my-project/my-repo/my-image:1.0"
Dengan:
--resourcemenentukan URI resource image untuk mencantumkan referensi file SBOM.
Output mencakup hal berikut:
- Lokasi Cloud Storage untuk SBOM. Dengan lokasi Cloud Storage, Anda dapat melihat SBOM di gcloud CLI dengan menjalankan perintah gcloud storage cat.
- Apakah SBOM masih ada di bucket Cloud Storage atau telah dihapus.
- Hash SBOM yang dapat Anda gunakan untuk memverifikasi bahwa SBOM tidak diubah.
Filter
Anda dapat memfilter SBOM tertentu menggunakan salah satu flag opsional berikut:
| Flag | Tujuan | Nilai input |
|---|---|---|
--dependency |
Mencantumkan semua referensi file SBOM tempat resource menginstal paket yang ditentukan. Lihat jenis paket yang didukung. | Nama paket terinstal |
--resource |
Mencantumkan referensi file SBOM yang terkait dengan image tertentu. | URI resource |
--resource-prefix |
Mencantumkan referensi file SBOM yang terkait dengan awalan jalur resource. | Jalur resource, yang akan digunakan sebagai awalan untuk penelusuran |
Contoh pemfilteran
Filter hasil menurut URI resource:
gcloud artifacts sbom list \
--resource="us-east1-docker.pkg.dev/project/repo/my-image@sha256:88b205d7995332e10e836514fbfd59ecaf8976fc15060cd66e85cdcebe7fb356"
Filter menurut awalan resource:
gcloud artifacts sbom list \
--resource-prefix="us-east1-docker.pkg.dev/project/repo"
Batasan
- Informasi lisensi hanya diberikan untuk paket OS dan paket bahasa yang didukung.
Langkah berikutnya
- Membuat SBOM.
- Pelajari cara menggunakan pernyataan VEX untuk memberikan informasi keamanan tambahan. Lihat Membuat dan menyimpan SBOM untuk mengetahui format yang didukung Artifact Analysis.