Anda dapat memilih untuk memberikan metadata Anda sendiri ke Analisis Artefak untuk memenuhi kebutuhan bisnis tertentu. Misalnya, organisasi yang menyediakan pengelolaan keamanan untuk penampung Docker pelanggannya dapat menggunakan Analisis Artefak untuk menyimpan dan mengambil metadata terkait keamanan untuk image tersebut.
Ikuti langkah-langkah di bawah untuk memberikan metadata kerentanan kustom untuk image Anda menggunakan Artifact Analysis API. Anda dapat menggunakan petunjuk yang sama untuk menyimpan dan mengambil jenis metadata apa pun yang didukung Analisis Artefak.
Sebelum memulai
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Enable the Container Analysis API.
- 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.
-
Enable the Container Analysis API.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
- Pelajari cara menyiapkan kontrol akses untuk metadata di project Anda. Lewati langkah ini jika Anda hanya menggunakan metadata dari kemunculan kerentanan yang dibuat oleh pemindaian container Artifact Analysis.
Membuat catatan dan kemunculan untuk project
Bagian ini menjelaskan cara membuat catatan dan kemunculan. Untuk contoh ini, Anda akan menggunakan jenis VULNERABILITY
.
Sebagai penyedia, Anda akan membuat catatan di project untuk setiap kerentanan, dan Anda akan membuat kemunculan di project pelanggan untuk kejadian kerentanan tersebut.
Buat catatan
Gunakan langkah-langkah berikut untuk membuat catatan dan memberinya ID catatan.
API
Buat file bernama
note.json
dengan deskripsi dan detail kerentanan. Kode berikut menunjukkan contoh filenote.json
:{ "shortDescription": "A brief Description of the note", "longDescription": "A longer description of the note", "kind": "VULNERABILITY", "vulnerability": { "details": [ { "affectedPackage": "libexempi3", "affectedCpeUri": "cpe:/o:debian:debian_linux:7", "affectedVersionStart": { "name": "2.5.7", "revision": "1", "kind": "MINIMUM"}, "affectedVersionEnd": { "name": "2.5.9", "revision": "1", "kind": "MINIMUM"}, }, { "affectedCpeUri": "cpe:/o:debian:abc:10", "affectedPackage": "anotherPackage", } ] } }
Lihat dokumentasi notes API untuk informasi selengkapnya tentang representasi JSON catatan.
Jalankan perintah curl berikut untuk membuat catatan:
curl -v -H "Content-Type: application/json" -H \ "Authorization: Bearer $(gcloud auth print-access-token)" \ https://containeranalysis.googleapis.com/v1/projects/PROVIDER_PROJECT_ID/notes?note_id=NOTE_ID -d @note.json
Dengan keterangan:
- PROVIDER_PROJECT_ID adalah project ID Anda.
- NOTE_ID menentukan ID untuk catatan Anda. Gunakan string dengan panjang maksimum 100 karakter.
Java
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Analisis Artefak, lihat library klien Analisis Artefak. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Artifact Analysis Java API.
Untuk melakukan autentikasi ke Analisis Artefak, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Go
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Analisis Artefak, lihat library klien Analisis Artefak. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Artifact Analysis Go API.
Untuk melakukan autentikasi ke Analisis Artefak, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Node.js
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Analisis Artefak, lihat library klien Analisis Artefak. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Artifact Analysis Node.js API.
Untuk melakukan autentikasi ke Analisis Artefak, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Ruby
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Analisis Artefak, lihat library klien Analisis Artefak. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Artifact Analysis Ruby API.
Untuk melakukan autentikasi ke Analisis Artefak, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Python
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Analisis Artefak, lihat library klien Analisis Artefak. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Artifact Analysis Python API.
Untuk melakukan autentikasi ke Analisis Artefak, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Membuat kemunculan untuk catatan
Untuk membuat kemunculan catatan:
API
Buat file bernama
occurrence.json
dengan konten berikut:{ "resourceUri": "<resource_url>", "noteName": "projects/<provider-project-id>/notes/<note_id>", "kind": "VULNERABILITY", "vulnerability": { "packageIssue": [{ "affectedCpeUri": "cpe:/o:debian_linux:7", "affectedPackage": "packageName", "affectedVersion": { "kind": "NORMAL", "name": "8.1", "revision": "3" }, "fixedCpeUri": "cpe:/o:debian_linux:7", "fixedPackage": "packageName", "fixedVersion": { "kind": "MAXIMUM" } }] "severity": "LOW" } }
Dengan keterangan:
- resource_url adalah URL resource yang terkait dengan
kejadian, misalnya
https://us-central1-docker.pkg.dev/my-project/my-repository/my-image@sha256:123
. - note_id menentukan ID untuk catatan Anda. Gunakan string dengan panjang maksimum 100 karakter.
Lihat dokumentasi occurrences API untuk mengetahui informasi selengkapnya tentang representasi JSON kemunculan.
- resource_url adalah URL resource yang terkait dengan
kejadian, misalnya
Jalankan perintah curl berikut dengan CUSTOMER_PROJECT_ID adalah project ID pelanggan Anda:
curl -v -H "Content-Type: application/json" -H \ "Authorization: Bearer $(gcloud auth print-access-token)" \ https://containeranalysis.googleapis.com/v1/projects/CUSTOMER_PROJECT_ID/occurrences -d @occurrence.json
Java
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Analisis Artefak, lihat library klien Analisis Artefak. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Artifact Analysis Java API.
Untuk melakukan autentikasi ke Analisis Artefak, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Go
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Analisis Artefak, lihat library klien Analisis Artefak. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Artifact Analysis Go API.
Untuk melakukan autentikasi ke Analisis Artefak, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Node.js
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Analisis Artefak, lihat library klien Analisis Artefak. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Artifact Analysis Node.js API.
Untuk melakukan autentikasi ke Analisis Artefak, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Ruby
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Analisis Artefak, lihat library klien Analisis Artefak. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Artifact Analysis Ruby API.
Untuk melakukan autentikasi ke Analisis Artefak, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Python
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Analisis Artefak, lihat library klien Analisis Artefak. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Artifact Analysis Python API.
Untuk melakukan autentikasi ke Analisis Artefak, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Mendapatkan semua kemunculan untuk catatan tertentu
Anda dapat melihat semua kemunculan kerentanan tertentu di seluruh project
pelanggan menggunakan notes.occurrences.list()
.
API
Untuk mencantumkan semua kemunculan catatan, kirim permintaan GET sebagai berikut:
GET https://containeranalysis.googleapis.com/v1/projects/PROJECT_ID/notes/NOTE_ID/occurrences
Lihat endpoint projects.notes.occurrences.list
API
untuk detail selengkapnya.
Java
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Analisis Artefak, lihat library klien Analisis Artefak. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Artifact Analysis Java API.
Untuk melakukan autentikasi ke Analisis Artefak, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Go
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Analisis Artefak, lihat library klien Analisis Artefak. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Artifact Analysis Go API.
Untuk melakukan autentikasi ke Analisis Artefak, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Node.js
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Analisis Artefak, lihat library klien Analisis Artefak. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Artifact Analysis Node.js API.
Untuk melakukan autentikasi ke Analisis Artefak, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Ruby
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Analisis Artefak, lihat library klien Analisis Artefak. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Artifact Analysis Ruby API.
Untuk melakukan autentikasi ke Analisis Artefak, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Python
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Analisis Artefak, lihat library klien Analisis Artefak. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Artifact Analysis Python API.
Untuk melakukan autentikasi ke Analisis Artefak, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Langkah selanjutnya
Untuk mengetahui petunjuk tentang cara melihat dan memfilter catatan serta kemunculan untuk image container, lihat Melihat kemunculan kerentanan.
Untuk petunjuk cara menyiapkan notifikasi, lihat Notifikasi Pub/Sub.