GSP878
Ringkasan
Kebijakan keamanan edge Google Cloud Armor memungkinkan Anda membatasi akses ke objek yang di-cache di Cloud CDN (Jaringan Penayangan Konten) dan Cloud Storage. Kebijakan keamanan edge di-deploy dan diterapkan di dekat perimeter terluar jaringan Google, di upstream tempat cache Cloud CDN berada. Hal ini dilakukan untuk memastikan pengguna Anda tidak mengakses objek di bucket penyimpanan dari wilayah geografis yang dibatasi, atau memastikan distribusi media Anda memfilter wilayah geografis sesuai dengan lisensi yang Anda miliki.
Di lab ini, Anda akan membuat bucket Google Cloud Storage, mengupload gambar ke bucket tersebut, mengikatnya ke load balancer, lalu mengaktifkan kebijakan keamanan edge Cloud CDN dan Cloud Armor di bucket tersebut.
Yang akan Anda pelajari
Di lab ini, Anda akan mempelajari cara:
- Menyiapkan Bucket Cloud Storage dengan konten yang dapat di-cache
- Membuat kebijakan keamanan edge untuk melindungi konten
- Memastikan kebijakan keamanan edge berfungsi seperti yang diharapkan
Penyiapan dan persyaratan
Sebelum mengklik tombol Start Lab
Baca petunjuk ini. Lab memiliki timer dan Anda tidak dapat menjedanya. Timer yang dimulai saat Anda mengklik Start Lab akan menampilkan durasi ketersediaan resource Google Cloud untuk Anda.
Lab interaktif ini dapat Anda gunakan untuk melakukan aktivitas lab di lingkungan cloud sungguhan, bukan di lingkungan demo atau simulasi. Untuk mengakses lab ini, Anda akan diberi kredensial baru yang bersifat sementara dan dapat digunakan untuk login serta mengakses Google Cloud selama durasi lab.
Untuk menyelesaikan lab ini, Anda memerlukan:
- Akses ke browser internet standar (disarankan browser Chrome).
Catatan: Gunakan jendela Samaran (direkomendasikan) atau browser pribadi untuk menjalankan lab ini. Hal ini akan mencegah konflik antara akun pribadi Anda dan akun siswa yang dapat menyebabkan tagihan ekstra pada akun pribadi Anda.
- Waktu untuk menyelesaikan lab. Ingat, setelah dimulai, lab tidak dapat dijeda.
Catatan: Hanya gunakan akun siswa untuk lab ini. Jika Anda menggunakan akun Google Cloud yang berbeda, Anda mungkin akan dikenai tagihan ke akun tersebut.
Cara memulai lab dan login ke Konsol Google Cloud
-
Klik tombol Start Lab. Jika Anda perlu membayar lab, dialog akan terbuka untuk memilih metode pembayaran.
Di sebelah kanan terdapat panel Lab setup and access yang berisi hal-hal berikut:
- Tombol Open Google Cloud console
- Kredensial sementara (nama pengguna dan sandi) yang harus Anda gunakan untuk lab ini
- Informasi lain, jika diperlukan, untuk menyelesaikan lab ini
Perhatikan bahwa timer lab terletak di dekat bagian atas halaman, yang menampilkan waktu yang tersisa.
-
Klik Open Google Cloud console (atau klik kanan dan pilih Open Link in Incognito Window jika Anda menjalankan browser Chrome).
Lab akan menjalankan resource, lalu membuka tab lain yang menampilkan halaman Sign in.
Tips: Atur tab di jendela terpisah secara berdampingan.
Catatan: Jika Anda melihat dialog Choose an account, klik Use Another Account.
-
Jika perlu, salin Username di bawah dan tempel ke dialog Sign in.
{{{user_0.username | "Username"}}}
Anda juga dapat menemukan Username di panel Lab setup and access.
-
Klik Next.
-
Salin Password di bawah dan tempel ke dialog Welcome.
{{{user_0.password | "Password"}}}
Anda juga dapat menemukan Password di panel Lab setup and access.
-
Klik Next.
Penting: Anda harus menggunakan kredensial yang diberikan lab. Jangan menggunakan kredensial akun Google Cloud Anda.
Catatan: Penggunaan akun Google Cloud sendiri untuk lab ini mungkin dikenai biaya tambahan.
-
Klik untuk melanjutkan ke halaman berikutnya:
- Setujui persyaratan dan ketentuan.
- Jangan tambahkan opsi pemulihan atau autentikasi 2 langkah (karena ini akun sementara).
- Jangan daftar uji coba gratis.
Setelah beberapa saat, Konsol Google Cloud akan terbuka di tab ini.
Catatan: Untuk mengakses produk dan layanan Google Cloud, klik Navigation menu atau ketik nama layanan atau produk di kolom Search.
Sebelum memulai
- Di Cloud Shell, tetapkan Project ID Anda dan buat variabel lingkungan untuknya:
export PROJECT_ID=$(gcloud config get-value project)
echo $PROJECT_ID
gcloud config set project $PROJECT_ID
Tugas 1. Membuat bucket Cloud Storage dan mengupload objek
Bucket Cloud Storage akan menjadi sumber asal untuk Cloud CDN.
-
Di konsol, buka Navigation menu (
) > Cloud Storage > Buckets.
-
Untuk membuat bucket Cloud Storage baru, klik CREATE.
-
Tetapkan nama bucket sebagai -bucket .
-
Klik Continue.
-
Untuk Location type, pilih Region, lalu pilih .
-
Klik Continue.
-
Kelas penyimpanan default untuk bucket Anda adalah Standard. Klik Continue.
-
Hapus centang pada kotak Enforce public access prevention on this bucket di bagian Prevent public access.
-
Pilih Fine-grained di bagian Access Control.
-
Klik Continue.
-
Klik Create.
Selesai—Anda baru saja berhasil membuat bucket Cloud Storage!
Mengupload Objek ke bucket
Sekarang upload objek ke bucket, yang akan Anda gunakan nanti. Secara default, bucket Cloud Storage bersifat pribadi. Sebagai bagian dari lab ini, Anda akan membuat objek tersedia di Internet.
- Jalankan perintah berikut di Cloud Shell untuk mendownload gambar ke Cloud Shell. Gambar Google dari halaman beranda Google digunakan untuk lab ini.
wget --output-document google.png https://www.google.com/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png
- Gunakan perintah
gsutil cp untuk mengupload gambar dari Cloud Shell ke bucket yang Anda buat:
gsutil cp google.png gs://{{{project_0.startup_script.project_id|Bucket Name}}}
- Hapus gambar yang didownload dari Cloud Shell:
rm google.png
-
Temukan objek yang telah Anda upload ke bucket dengan membuka Cloud Storage > Buckets > .
-
Sekarang, klik tiga titik di sisi kanan objek yang Anda upload, lalu klik Edit access.
-
Klik Add Entry dan tetapkan entity sebagai Public dari menu drop-down.
-
Klik Save.

Klik Periksa progres saya untuk memverifikasi tujuan.
Membuat Bucket Cloud Storage dan mengupload objek
Tugas 2. Membuat Load Balancer
Cloud CDN dan Cloud Armor adalah komponen yang dapat dihubungkan ke Cloud Load Balancing global Google. Di bagian ini, Anda akan membuat Load balancer HTTP.
- Di Navigation menu (
), klik View All Products > Network services > Load Balancing.
- Klik +CREATE LOAD BALANCER.
- Di bagian Type of load balancer, pilih Application Load Balancer (HTTP/HTTPS), lalu klik NEXT.
- Di bagian Public facing or internal, pilih Public facing (external), lalu klik NEXT.
- Untuk Global or single region deployment, pilih Best for global workloads, lalu klik NEXT.
- Untuk Load balancer generation, pilih Global external Application Load Balancer, lalu klik NEXT.
- Klik tombol CONFIGURE.
- Beri nama load balancer sebagai
edge-cache-lb.
Membuat konfigurasi frontend
Untuk membuat konfigurasi frontend:
-
Klik Frontend configuration.
-
Untuk konfigurasi frontend, gunakan HTTP (meskipun HTTPS juga berfungsi jika Anda memiliki sertifikat) dan alamat IP sementara, serta pastikan Anda telah memilih jaringan paket premium. Opsi ini diterapkan secara default.
-
Klik Done.

Membuat konfigurasi backend
Untuk membuat konfigurasi backend:
-
Klik Backend configuration.
-
Untuk Backend services & backend buckets, klik Create a backend bucket.
-
Setel Backend bucket name ke lb-backend-bucket.
-
Di kolom berikutnya, pilih bucket Cloud Storage yang dibuat sebelumnya dengan mengklik tombol Browse.
-
Biarkan semua nilai lainnya dalam setelan default.
-
Klik Create.
Membuat aturan host dan jalur
Untuk membuat aturan host dan jalur:
-
Klik Routing rules di sebelah kiri.
-
Pilih simple host and path rule di bagian Mode untuk mengirim permintaan apa pun ke bucket. Setelan ini adalah opsi default.
Meninjau dan membuat Load Balancer HTTP
Untuk meninjau dan membuat Load Balancer HTTP:
- Klik Review and finalize.
- Tinjau Backend services dan Frontend.
- Klik Create.
Mendapatkan IP Load Balancer
Untuk mendapatkan IP Load Balancer dari konsol:
- Klik nama load balancer dalam daftar load balancer project. Catat alamat IPv4 dari load balancer untuk tugas berikutnya. Sebut IP ini sebagai
[LOAD_BALANCER_IP].

Mengirim kueri ke Load Balancer
Setelah beberapa menit, kirim kueri ke load balancer untuk objek yang Anda upload. Anda akan memerlukan alamat IP load balancer dan nama gambar.
- Jalankan perintah berikut dari CloudShell dan ganti LOAD_BALANCER_IP dengan alamat IPv4 load balancer:
curl -svo /dev/null http://LOAD_BALANCER_IP/google.png
Catatan: Mungkin diperlukan waktu hingga 5 menit untuk mengakses Load Balancer HTTP.
Output:
student-cloudshell% curl -svo /dev/null http://34.98.81.123/google.png
* Trying 34.98.81.123...
* TCP_NODELAY set
* Connected to 34.98.81.123 (34.98.81.123) port 80 (#0)
> GET /google.png HTTP/1.1
> Host: YOUR_IP
> User-Agent: curl/7.64.1
> Accept: */*
>
< HTTP/1.1 200 OK
< X-GUploader-UploadID: ADPycdtoILI76KVsvBvdVGvSfzaxys1m3zYqCepBrmJxAI48ni24cWCRIdNu-53PX3DS6iycxp6xwFbMpwtcHHZQUQmEBxAgng
< Expires: Mon, 13 Dec 2021 22:58:26 GMT
< Date: Mon, 13 Dec 2021 21:58:26 GMT
< Cache-Control: public, max-age=3600
< Last-Modified: Mon, 13 Dec 2021 21:45:57 GMT
< ETag: "8f9327db2597fa57d2f42b4a6c5a9855"
< x-goog-generation: 1639431957957903
< x-goog-metageneration: 2
< x-goog-stored-content-encoding: identity
< x-goog-stored-content-length: 5969
< Content-Type: image/png
< x-goog-hash: crc32c=TeiHTA==
< x-goog-hash: md5=j5Mn2yWX+lfS9CtKbFqYVQ==
< x-goog-storage-class: STANDARD
< Accept-Ranges: bytes
< Content-Length: 5969
< Server: UploadServer
- Jalankan beberapa kueri dengan perintah ini:
for i in `seq 1 50`; do curl http://LOAD_BALANCER_IP/google.png; done
Mengonfirmasi konten yang disajikan oleh Cloud CDN
- Pastikan konten Anda disajikan dari CDN melalui Pemantauan CDN atau Load Balancing dengan membuka Network Services > Cloud CDN.

Anda akan dapat mencapai rasio hit mendekati 100%.
Klik Periksa progres saya untuk memverifikasi tujuan.
Membuat Load Balancer
Tugas 3. Menghapus objek dari bucket Cloud Storage
Setelah cache terisi, hapus objek dari bucket. Tindakan ini akan mempertegas bahwa Anda menerapkan kebijakan ke cache, bukan ke backend.
-
Di Navigation menu (
), klik Cloud Storage > Buckets > -bucket > Objects.
-
Pilih objek dan hapus dengan mengklik tombol Delete di bagian atas.
-
Klik Delete saat diminta.
Klik Periksa progres saya untuk memverifikasi tujuan.
Menghapus objek dari bucket Cloud Storage
Tugas 4. Membuat kebijakan keamanan edge
Kebijakan Cloud Armor dibuat di luar Load Balancer HTTP. Setelah kebijakan Cloud Armor di-deploy, Anda dapat mengaitkannya dengan satu atau beberapa resource Bucket dan Layanan Backend Load Balancer HTTP, yang disebut sebagai Target.
- Di Navigation menu (
), klik View All Products > Network Security > Cloud Armor policies, lalu klik Create Policy.
- Tetapkan nilai berikut dan biarkan semua nilai lainnya dalam setelan default, lalu klik Next Step:
| Properti |
Nilai (masukkan nilai atau pilih opsi yang ditentukan) |
| Nama |
edge-security-policy |
| Jenis kebijakan |
Kebijakan keamanan Edge |
| Tindakan aturan default |
Deny |
- Di bagian Apply policy to targets, klik Add Target dan tetapkan nilai berikut:
| Properti |
Nilai |
| Jenis 1 |
Bucket backend (load balancer aplikasi eksternal) |
| Target Bucket Backend 1 |
lb-backend-bucket |
-
Klik Done.
-
Klik Create Policy.
Memvalidasi Kebijakan Keamanan Edge
Setelah membuat kebijakan keamanan edge di depan bucket backend, pastikan kebijakan tersebut berfungsi seperti yang diharapkan.
Memeriksa kebijakan keamanan
Setelah beberapa menit berlalu, Anda dapat memeriksa apakah kebijakan Cloud Armor berjalan.
Dari command line, jalankan perintah berikut, yang akan memberikan respons 403:
curl -svo /dev/null http://LOAD_BALANCER_IP/google.png
Error 403 terjadi saat Anda tidak memiliki izin untuk mengakses halaman web atau hal lain di server web.
Output:
curl -svo /dev/null http://34.98.81.123/google.png
* Trying 34.98.81.123...
* TCP_NODELAY set
* Connected to 34.98.81.123 (34.98.81.123) port 80 (#0)
> GET /google.png HTTP/1.1
> Host: YOUR_IP
> User-Agent: curl/7.64.1
> Accept: */*
>
< HTTP/1.1 403 Forbidden
< X-GUploader-UploadID: ADPycdtS6FtJOGIsiWYDrAAE8VFeQuNutcvbGoQe2t8EZxsuspVtmCjyiTv_P3CNktroHMOGFXkTCfG-Jj-rUO60ZGPpEbpqcw
< Content-Type: application/xml; charset=UTF-8
< Content-Length: 111
< Date: Mon, 13 Dec 2021 23:09:35 GMT
< Expires: Mon, 13 Dec 2021 23:09:35 GMT
< Cache-Control: private, max-age=0
< Server: UploadServer
Memeriksa log
Selanjutnya, Anda akan memeriksa log untuk melihat kebijakan keamanan edge yang diterapkan.
-
Di Navigation menu (
), klik View All Products > Observability > Logging > Logs Explorer.
-
Masukkan cuplikan di bawah ke kotak kueri, lalu klik Run Query:
resource.type:(http_load_balancer) AND jsonPayload.@type="type.googleapis.com/google.cloud.loadbalancing.type.LoadBalancerLogEntry" AND severity>=WARNING
- Perhatikan
respons 403 dan kebijakan keamanan yang diterapkan.

Klik Periksa progres saya untuk memverifikasi tujuan.
Membuat kebijakan keamanan edge untuk Cloud Armor
Menghapus kebijakan keamanan
Untuk membuktikan bahwa objek dikirimkan dari cache CDN, hapus kebijakan keamanan Cloud Armor dan kueri objek. Objek asal telah dihapus dari Cloud Storage, yang membuktikan bahwa objek tersebut disajikan dari cache edge.
- Di Navigation menu (
), klik View All Products > Network Security > Cloud Armor policies > edge-security-policy > Targets.
- Pilih target
lb-backend-bucket dan klik Remove untuk menghapus bucket target. Konfirmasi Remove.
- Tunggu beberapa menit, lalu kirim
curl lain ke resource di bucket Cloud Storage:
curl -svo /dev/null http://LOAD_BALANCER_IP/google.png
Kali ini Anda mendapatkan respons 200. Halaman web berfungsi seperti yang diharapkan.
Output:
student-cloudshell% curl -svo /dev/null http://34.98.81.123/google.png
Trying 34.98.81.123...
TCP_NODELAY set
Connected to 34.98.81.123 (34.98.81.123) port 80 (#0)
GET /google.png HTTP/1.1
Host: YOUR_IP
User-Agent: curl/7.64.1
Accept: */*
HTTP/1.1 200 OK
X-GUploader-UploadID: ADPycdtI7f49P3MSuZSZ8vl6RwfwmnIDJ59EeSKp7UPvLPawdaiRHXiNWLtseQTxUxceWOvSLvpYmT3pWVkV4qeIP7M
Date: Mon, 13 Dec 2021 23:06:46 GMT
Last-Modified: Mon, 13 Dec 2021 21:45:57 GMT
ETag: "8f9327db2597fa57d2f42b4a6c5a9855"
x-goog-generation: 1639431957957903
x-goog-metageneration: 2
x-goog-stored-content-encoding: identity
x-goog-stored-content-length: 5969
Content-Type: image/png
x-goog-hash: crc32c=TeiHTA==
x-goog-hash: md5=j5Mn2yWX+lfS9CtKbFqYVQ==
x-goog-storage-class: STANDARD
Accept-Ranges: bytes
Content-Length: 5969
Server: UploadServer
Age: 1621
Cache-Control: public,max-age=3600
{ [775 bytes data]
Connection #0 to host 34.98.81.123 left intact
Closing connection 0
Coba beberapa kali dan lihat apakah Anda mendapatkan kode status 403.
Selamat!
Anda telah berhasil membuat bucket Cloud Storage, mengupload gambar ke bucket tersebut, mengaitkannya ke load balancer, lalu mengaktifkan Cloud CDN dan kebijakan keamanan edge di bucket tersebut.
Manual Terakhir Diperbarui pada 10 Desember 2024
Lab Terakhir Diuji pada 4 September 2025
Hak cipta 2026 Google LLC. Semua hak dilindungi undang-undang. Google dan logo Google adalah merek dagang dari Google LLC. Semua nama perusahaan dan produk lain mungkin adalah merek dagang masing-masing perusahaan yang bersangkutan.