Memindai paket Go secara otomatis
Pelajari cara mengaktifkan pemindaian otomatis, mengirim image container di Artifact Registry, dan melihat daftar kerentanan yang ditemukan dalam image.
Artifact Analysis memindai kerentanan setiap kali image dikirim ke Artifact Registry. Administrator platform dan developer aplikasi dapat menggunakan fitur pemindaian otomatis ini untuk membantu mengidentifikasi risiko dalam pipeline pengiriman software mereka.
Panduan memulai ini menggunakan paket sederhana yang tersedia secara publik untuk mendemonstrasikan satu jenis pemindaian paket. Secara default, Artifact Analysis memindai kerentanan dalam beberapa jenis paket setelah Anda mengaktifkan API pemindaian. Jenis paket yang didukung mencakup: OS, Go, Java (Maven), Python, dan Node.js (npm).
Sebelum memulai
- Login keakun Anda. Google Cloud Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
-
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 -
Buat atau pilih Google Cloud project.
Peran yang diperlukan untuk memilih atau membuat project
- Memilih project: Memilih project tidak memerlukan peran IAM tertentu Anda dapat memilih project mana pun yang telah diberi peran.
-
Membuat project: Untuk membuat project, Anda memerlukan peran Pembuat Project
(
roles/resourcemanager.projectCreator), yang berisi izinresourcemanager.projects.create. Pelajari cara memberikan peran.
-
Buat Google Cloud project:
gcloud projects create PROJECT_ID
Ganti
PROJECT_IDdengan nama untuk Google Cloud project yang Anda buat. -
Pilih Google Cloud project yang Anda buat:
gcloud config set project PROJECT_ID
Ganti
PROJECT_IDdengan nama Google Cloud project Anda.
-
Pastikan penagihan diaktifkan untuk Google Cloud project Anda.
Aktifkan Artifact Registry API dan Container Scanning API:
Peran yang diperlukan untuk mengaktifkan API
Untuk mengaktifkan API, Anda memerlukan peran IAM Admin Penggunaan Layanan (
roles/serviceusage.serviceUsageAdmin), yang berisi izinserviceusage.services.enable. Pelajari cara memberikan peran.gcloud services enable containerscanning.googleapis.com
artifactregistry.googleapis.com -
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 -
Buat atau pilih Google Cloud project.
Peran yang diperlukan untuk memilih atau membuat project
- Memilih project: Memilih project tidak memerlukan peran IAM tertentu Anda dapat memilih project mana pun yang telah diberi peran.
-
Membuat project: Untuk membuat project, Anda memerlukan peran Pembuat Project
(
roles/resourcemanager.projectCreator), yang berisi izinresourcemanager.projects.create. Pelajari cara memberikan peran.
-
Buat Google Cloud project:
gcloud projects create PROJECT_ID
Ganti
PROJECT_IDdengan nama untuk Google Cloud project yang Anda buat. -
Pilih Google Cloud project yang Anda buat:
gcloud config set project PROJECT_ID
Ganti
PROJECT_IDdengan nama Google Cloud project Anda.
-
Pastikan penagihan diaktifkan untuk Google Cloud project Anda.
Aktifkan Artifact Registry API dan Container Scanning API:
Peran yang diperlukan untuk mengaktifkan API
Untuk mengaktifkan API, Anda memerlukan peran IAM Admin Penggunaan Layanan (
roles/serviceusage.serviceUsageAdmin), yang berisi izinserviceusage.services.enable. Pelajari cara memberikan peran.gcloud services enable containerscanning.googleapis.com
artifactregistry.googleapis.com
Buat repositori Docker di Artifact Registry
Buat repositori Docker untuk menyimpan image sampel untuk panduan memulai ini.
Buka halaman Repositories di Google Cloud konsol.
Klik Create Repository.
Di halaman Create Repository, masukkan setelan berikut:
- Name:
quickstart-docker-repo - Format: Docker
- Mode: Standar
- Location type: Region
- Region:
us-central1
- Name:
Klik Create.
Anda akan melihat halaman Repositories. Repositori quickstart-docker-repo Anda akan ditambahkan ke daftar repositori.
Mengonfigurasi autentikasi
Sebelum dapat mengirim atau mengambil image dengan Artifact Registry, Anda harus mengonfigurasi Docker agar menggunakan Google Cloud CLI untuk mengautentikasi permintaan ke Artifact Registry.
Di Cloud Shell atau shell lokal, siapkan autentikasi untuk repositori Docker di region us-central1:
gcloud auth configure-docker us-central1-docker.pkg.dev
Mendapatkan paket
Ubah ke direktori tempat Anda ingin menyimpan image container.
Salin image ke direktori lokal Anda. Misalnya, Anda dapat menggunakan Docker untuk mengambil image Go terbaru dari Docker Hub.
docker pull golang:1.17.6-alpine
Memberi tag pada paket dengan nama repositori
Jika ingin mengirim paket ke Artifact Registry, Anda harus mengonfigurasi perintah docker push untuk mengirim image ke lokasi tertentu.
Jalankan perintah berikut untuk memberi tag pada image sebagai quickstart-image:tag1:
docker tag golang:1.17.6-alpine \ us-central1-docker.pkg.dev/PROJECT/quickstart-docker-repo/quickstart-image:tag1
Dengan:
- PROJECT adalah Google Cloud
project ID Anda.
Jika project ID Anda berisi titik dua (
:), lihat Project dengan cakupan domain. us-central1adalah region repositori Artifact Registry.docker.pkg.devadalah nama host untuk repositori Docker.quickstart-imageadalah nama image yang ingin Anda gunakan di repositori. Nama image dapat berbeda dengan nama image lokal.tag1adalah tag yang Anda tambahkan ke image Docker. Jika Anda tidak menentukan tag, Docker akan menerapkan tag defaultlatest.
Mengirim image ke Artifact Registry
Artifact Analysis otomatis memindai paket Go baru saat diupload ke Artifact Registry.
Untuk mengirim image ke repositori Docker di Artifact Registry, jalankan perintah berikut:
docker push us-central1-docker.pkg.dev/PROJECT/quickstart-docker-repo/quickstart-image:tag1
Ganti PROJECT dengan Google Cloud
project ID Anda.
Jika project ID Anda berisi titik dua (:), lihat
Project dengan cakupan domain.
Melihat hasil pemindaian kerentanan
Pembersihan
Agar akun Anda tidak dikenai biaya untuk resource yang digunakan pada halaman ini, hapus project yang berisi resource tersebut. Google Cloud Google Cloud
Jika Anda membuat project baru untuk panduan ini, Anda dapat menghapus project tersebut sekarang.- Di Google Cloud konsol, buka halaman Manage resources.
- Pada daftar project, pilih project yang Anda ingin Anda hapus, lalu klik Delete.
- Pada dialog, ketik project ID, lalu klik Shut down untuk menghapus project.