Dokumen ini menjelaskan cara mengakses data software bill of materials (SBOM) dan metadata dependensi terkait untuk membantu Anda memahami komponen image container yang disimpan di Artifact Registry.
Sebelum memulai
-
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 Container Analysis, Artifact Registry 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 Container Analysis, Artifact Registry APIs.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
- Memiliki SBOM yang disimpan di Cloud Storage. Lihat petunjuk tentang membuat SBOM.
Peran yang diperlukan
Untuk mendapatkan izin yang Anda perlukan guna 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 SBOMS:
Storage Object Viewer (
roles/storage.objectViewer
) - bucket Cloud Storage tertentu
Untuk mengetahui informasi selengkapnya tentang cara memberikan 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 konsol Google Cloud
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 Repository details akan terbuka dan menampilkan daftar gambar Anda.
Di daftar gambar, klik nama gambar.
Halaman ini menampilkan daftar ringkasan gambar Anda.
Di daftar ringkasan gambar, klik nama ringkasan.
Halaman menampilkan baris tab tempat tab Ringkasan terbuka, yang menampilkan detail seperti format, lokasi, repositori, ukuran virtual, dan tag.
Di baris tab, klik tab Dependencies.
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 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 Analisis Artefak maupun diupload secara manual.
Lisensi
Bagian ringkasan Lisensi menampilkan diagram batang yang disebut Lisensi yang paling umum. Ini menunjukkan jenis lisensi yang paling sering muncul dalam informasi dependensi Anda. Saat Anda menahan kursor di batang pada grafik, konsol akan menampilkan jumlah persis untuk instance jenis lisensi tersebut.
Dependensi
Daftar dependensi menampilkan konten ringkasan gambar Anda, termasuk:
- Nama paket
- Versi paket
- Jenis paket
- Jenis lisensi
Anda dapat memfilter daftar dependensi menurut kategori mana pun.
Melihat SBOM di Cloud Build
Jika menggunakan Cloud Build, Anda dapat melihat metadata image di panel samping Security insights dalam konsol Google Cloud.
Panel samping Insight keamanan memberikan ringkasan tingkat tinggi tentang informasi keamanan build untuk artefak yang disimpan di Artifact Registry. Untuk mempelajari lebih lanjut panel samping dan cara menggunakan Cloud Build untuk membantu melindungi supply chain software 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 keterangan:
--resource
menentukan URI resource gambar untuk mencantumkan referensi file SBOM.
Output mencakup hal berikut:
- Lokasi Cloud Storage untuk SBOM. Dengan menggunakan 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 tersebut tidak diubah.
Filter
Anda dapat memfilter SBOM tertentu menggunakan salah satu flag opsional berikut:
Flag | Tujuan | Nilai input |
---|---|---|
--dependency |
Cantumkan semua referensi file SBOM tempat resource menginstal paket yang ditentukan. Lihat jenis paket yang didukung. | Nama paket yang diinstal |
--resource |
Mencantumkan referensi file SBOM yang terkait dengan image tertentu. | URI resource |
--resource-prefix |
Cantumkan referensi file SBOM yang terkait dengan awalan jalur resource. | Jalur resource, yang akan digunakan sebagai awalan untuk penelusuran |
Contoh pemfilteran
Memfilter 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 selanjutnya
- Buat SBOM.
- Pelajari cara menggunakan pernyataan VEX.