Membangun aplikasi dan melihat insight keamanan
Panduan memulai ini menjelaskan cara membuat aplikasi dan melihat insight keamanan untuk build di panel Insight keamanan Perlindungan Pengiriman Software di Konsol Google Cloud.
Anda akan:
- Bangun dan masukkan aplikasi Java ke dalam container menggunakan Cloud Build dan kirim image container ke repositori Docker Artifact Registry.
Lihat insight keamanan berikut untuk build:
- Level supply-chain Levels for Software Artifacts (SLSA), yang mengidentifikasi tingkat kedewasaan proses build software Anda sesuai dengan spesifikasi SLSA .
- Kerentanan dalam artefak build.
- Software bill of materials (SBOM) untuk artefak build.
- Build provenance, yang merupakan kumpulan metadata yang dapat diverifikasi tentang build. Halaman ini berisi detail seperti ringkasan image yang di-build, lokasi sumber input, toolchain build, langkah-langkah build, dan durasi build.
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.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Buat atau pilih project Google Cloud.
-
Membuat project Google Cloud:
gcloud projects create PROJECT_ID
Ganti
PROJECT_ID
dengan nama untuk project Google Cloud yang Anda buat. -
Pilih project Google Cloud yang Anda buat:
gcloud config set project PROJECT_ID
Ganti
PROJECT_ID
dengan nama project Google Cloud Anda.
-
-
Make sure that billing is enabled for your Google Cloud project.
-
Aktifkan API Cloud Build, Artifact Registry, and Container Scanning:
gcloud services enable cloudbuild.googleapis.com
artifactregistry.googleapis.com containerscanning.googleapis.com - Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Buat atau pilih project Google Cloud.
-
Membuat project Google Cloud:
gcloud projects create PROJECT_ID
Ganti
PROJECT_ID
dengan nama untuk project Google Cloud yang Anda buat. -
Pilih project Google Cloud yang Anda buat:
gcloud config set project PROJECT_ID
Ganti
PROJECT_ID
dengan nama project Google Cloud Anda.
-
-
Make sure that billing is enabled for your Google Cloud project.
-
Aktifkan API Cloud Build, Artifact Registry, and Container Scanning:
gcloud services enable cloudbuild.googleapis.com
artifactregistry.googleapis.com containerscanning.googleapis.com
Menyiapkan lingkungan Anda
Tetapkan project ID Anda sebagai variabel lingkungan:
export PROJECT_ID=$(gcloud config get project)
Clone repositori yang berisi contoh kode Java untuk mem-build dan memasukkan ke dalam container:
git clone https://github.com/googlecloudplatform/software-delivery-shield-demo-java.git cd software-delivery-shield-demo-java/backend
Membuat repositori Artifact Registry untuk image Anda
Buat repositori Docker baru bernama
containers
di lokasius-central1
dengan deskripsi "Repositori Docker":gcloud artifacts repositories create containers \ --repository-format=docker \ --location=us-central1 --description="Docker repository"
Pastikan repositori Anda telah dibuat:
gcloud artifacts repositories list
Anda akan melihat
containers
dalam daftar repositori yang ditampilkan.
Membangun aplikasi
Bangun dan masukkan aplikasi Java ke dalam container menggunakan Cloud Build. Perintah berikut mem-build dan menampung aplikasi Java dalam container dan menyimpan container yang telah dibangun di repositori docker Artifact Registry:
gcloud builds submit --config=cloudbuild.yaml --region=us-central1
Setelah build selesai, Anda akan melihat pesan status berhasil seperti berikut:
<pre class="none lang-sh">
DONE
-----------------------------------------------------------------------------
ID: 3e08565f-7f57-4449-bc68-51c46cf33d03
CREATE_TIME: 2022-09-19T15:41:07+00:00
DURATION: 54S
SOURCE: gs://sds-docs-project_cloudbuild/source/1663602066.777581-6ebe4b2d6fd741ffa18936d7f78055e9.tgz
IMAGES: us-central1-docker.pkg.dev/sds-docs-project/containers/java-guestbook-backend:quickstart
STATUS: SUCCESS
</pre>
Membuat SBOM untuk image yang di-build
SBOM adalah inventaris lengkap aplikasi, yang mengidentifikasi paket yang diandalkan software Anda. Isinya dapat mencakup software pihak ketiga dari vendor, artefak internal, dan library open source.
Buat SBOM untuk image yang Anda build di bagian sebelumnya:
gcloud artifacts sbom export
--uri=us-central1-docker.pkg.dev/${PROJECT_ID}/containers/java-guestbook-backend:quickstart
Lihat insight keamanan
UI Cloud Build di Google Cloud Console berisi panel Insight keamanan Software Delivery Shield yang menampilkan informasi keamanan yang terkait dengan build seperti level SLSA, kerentanan pada dependensi, dan provenance build.
Untuk melihat panel Insight keamanan Perlindungan Pengiriman Software:
Buka halaman Build history di Konsol Google Cloud:
Pilih project Anda lalu klik Buka.
Di menu drop-down Region, pilih us-central1.
Pada tabel dengan build, temukan baris dengan build yang baru saja Anda jalankan.
Di kolom Insight keamanan, klik Lihat.
Anda akan melihat panel Insight keamanan untuk build:
Panel ini menampilkan informasi berikut:
Level SLSA: Build ini telah mencapai SLSA Level 3. Klik link Pelajari lebih lanjut untuk mempelajari arti tingkat keamanan ini.
Kerentanan: Kerentanan yang ditemukan di artefak Anda. Klik nama image (java-guestbook-backend) untuk melihat artefak yang telah dipindai untuk mendeteksi kerentanan.
Dependensi untuk image container yang di-build di Artifact Registry.
Detail build: Detail build seperti builder dan link untuk melihat log.
Pembersihan
Agar tidak menimbulkan biaya pada akun Google Cloud Anda untuk resource yang digunakan pada halaman ini, hapus project Google Cloud yang berisi resource tersebut.
Nonaktifkan Container Scanning API:
gcloud services disable containerscanning.googleapis.com --force
Hapus repositori Artifact Registry:
gcloud artifacts repositories delete containers \ --location=us-central1 --async
Sekarang Anda telah menghapus repositori yang Anda buat sebagai bagian dari panduan memulai ini.
Langkah selanjutnya
- Pelajari lebih lanjut panel insight keamanan Software Delivery Shield di Cloud Build
- Pelajari cara melihat insight keamanan saat men-deploy ke Cloud Run
- Pelajari cara melihat insight keamanan saat melakukan deployment ke GKE
- Pelajari Software Delivery Shield lebih lanjut