Halaman ini menjelaskan cara membuat perimeter layanan.
Sebelum memulai
Baca tentang mengonfigurasi perimeter layanan.
Baca tentang pengelolaan jaringan VPC di perimeter layanan.
Baca cara memberikan akses ke Kontrol Layanan VPC.
Jika Anda ingin mengonfigurasi akses eksternal ke layanan yang dilindungi saat membuat perimeter, buat satu atau beberapa tingkat akses sebelum membuat perimeter.
Membuat perimeter layanan
Bagian ini menjelaskan cara membuat perimeter layanan, menambahkan project atau jaringan VPC ke perimeter, dan melindungi layanan.
Saat membuat perimeter layanan, Anda dapat secara opsional mengizinkan akses ke layanan yang dilindungi dari luar perimeter, dan menentukan layanan yang dapat diakses oleh layanan dan pengguna lain di dalam perimeter. Jika diinginkan, Anda dapat mengonfigurasi setelan ini setelah membuat perimeter.
Setelah Anda membuat perimeter layanan atau memperbarui perimeter layanan yang ada, perlu waktu hingga 30 menit agar perubahan diterapkan. Selama waktu ini,
perimeter dapat memblokir permintaan dengan pesan error berikut: Error 403: Request is prohibited by organization's policy.
Konsol
Di Google Cloud menu navigasi konsol, klik Security, lalu klik VPC Service Controls.
Jika diminta, pilih organisasi, folder, atau project Anda.
Pilih kebijakan akses yang ada atau buat kebijakan akses baru. Pastikan cakupan kebijakan akses mencakup semua project dan jaringan VPC yang ingin Anda tambahkan ke perimeter.
Di halaman VPC Service Controls, pilih mode penerapan perimeter. Secara default, Enforced mode dipilih. Jika Anda ingin membuat perimeter uji coba, klik Dry run mode.
Perimeter yang diterapkan secara aktif mencegah akses ke layanan yang dilindungi. Perimeter uji coba mencatat pelanggaran perimeter seolah-olah layanan dilindungi, tetapi tidak mencegah akses ke layanan tersebut. Untuk mengetahui informasi selengkapnya tentang mode yang diterapkan dan uji coba, baca tentang perimeter layanan.
Klik New perimeter.
Di halaman Create a service perimeter, di kolom Title, masukkan nama untuk perimeter.
Nama perimeter dapat memiliki panjang maksimal 50 karakter, harus diawali dengan huruf, dan hanya boleh berisi huruf Latin ASCII (a-z, A-Z), angka (0-9), atau garis bawah (
_). Nama perimeter peka huruf besar/kecil dan harus unik dalam kebijakan akses.Opsional: Di kolom Description, masukkan deskripsi untuk perimeter.
Untuk Perimeter type, pilih Regular.
Untuk Enforcement mode, pilih mode penerapan perimeter. Opsi yang tersedia adalah Dry run dan Enforced.
Klik Continue.
Untuk menambahkan project atau jaringan VPC yang ingin Anda amankan dalam perimeter, lakukan hal berikut:
Untuk menambahkan project ke perimeter, klik Add projects.
Di panel Add projects, pilih project yang ingin Anda lindungi.
Klik Add selected projects. Project yang ditambahkan akan muncul di bagian Projects.
Untuk menambahkan jaringan VPC ke perimeter, klik Add networks.
Dari daftar project, klik project yang berisi jaringan VPC.
Di panel Add VPC networks, pilih jaringan VPC yang ingin Anda lindungi.
Klik Add selected networks. Jaringan yang ditambahkan akan muncul di bagian VPC networks.
Klik Continue.
Untuk memilih layanan yang ingin Anda amankan di dalam perimeter, lakukan hal berikut:
Di panel Restricted services, klik Add services.
Di panel Add services, pilih layanan yang ingin Anda lindungi.
Klik Add selected services.
Klik Continue.
Opsional: Jika Anda ingin menentukan layanan yang dapat diakses dari endpoint jaringan di dalam perimeter, pilih salah satu opsi yang tersedia di panel VPC accessible services:
All services: Opsi ini mengizinkan semua Google Cloud layanan.
No services: Opsi ini tidak mengizinkan layanan Google Cloud apa pun.
All restricted services: Opsi ini hanya mengizinkan Google Cloud layanan yang telah Anda lindungi di perimeter ini.
Selected services: Opsi ini hanya mengizinkan Google Cloud layanan yang telah Anda pilih.
Klik Add services.
Di panel Add services, pilih layanan yang ingin Anda izinkan.
Klik Add selected services.
Untuk menyertakan semua layanan yang dibatasi yang dilindungi perimeter ke layanan yang dipilih, klik tombol Include all restricted services ke posisi aktif.
Klik Continue.
Anda juga dapat menambahkan layanan yang dapat diakses setelah perimeter dibuat.
Untuk mengetahui informasi selengkapnya, lihat Layanan yang dapat diakses VPC.
Opsional: Untuk mengizinkan akses ke resource terlindungi dari luar perimeter menggunakan tingkat akses, lakukan hal berikut:
Di panel Access levels, klik Add access levels.
Anda juga dapat menambahkan tingkat akses setelah perimeter dibuat.
Pilih kotak centang yang sesuai dengan tingkat akses yang ingin Anda terapkan ke perimeter.
Klik Add selected access levels.
Klik Continue.
Untuk mengizinkan akses ke resource dalam perimeter dari klien API di luar perimeter, lakukan hal berikut:
Di panel Ingress rules, klik Add an ingress rule.
Di kolom Title, masukkan judul untuk aturan ingress.
Di bagian From, tentukan sumber dari luar perimeter yang memerlukan akses. Anda dapat menentukan project, tingkat akses, dan jaringan VPC sebagai sumber.
Di bagian To, tentukan resource dalam perimeter yang dapat diakses oleh sumber.
Klik Continue.
Untuk mengetahui daftar atribut aturan traffic masuk, lihat Referensi aturan ingress.
Untuk mengizinkan akses yang melibatkan klien API atau resource dalam perimeter ke resource di luar perimeter, lakukan hal berikut:
Di panel Egress rules, klik Add an egress rule.
Di kolom Title, masukkan judul untuk aturan egress.
Di bagian From, tentukan sumber dari dalam perimeter yang memerlukan akses.
Di bagian To, tentukan resource di luar perimeter yang dapat diakses oleh sumber.
Untuk daftar atribut aturan egress, lihat Referensi aturan egress.
Klik Create.
gcloud
Untuk membuat perimeter baru dalam mode diterapkan, gunakan
perintah gcloud access-context-manager perimeters create.
gcloud access-context-manager perimeters create NAME \ --title=TITLE \ --resources=RESOURCES \ --restricted-services=RESTRICTED-SERVICES \ --ingress-policies=INGRESS-FILENAME.yaml \ --egress-policies=EGRESS-FILENAME.yaml \ [--access-levels=LEVELS] \ [--enable-vpc-accessible-services] \ [--vpc-allowed-services=ACCESSIBLE-SERVICES] \ --policy=POLICY_NAME
Untuk membuat perimeter baru dalam mode uji coba, gunakan perintah
gcloud access-context-manager perimeters dry-run create.
gcloud access-context-manager perimeters dry-run create NAME \ --perimeter-title=TITLE \ --perimeter-type=TYPE \ --perimeter-resources=RESOURCES \ --perimeter-restricted-services=RESTRICTED-SERVICES \ --perimeter-ingress-policies=INGRESS-FILENAME.yaml \ --perimeter-egress-policies=EGRESS-FILENAME.yaml \ [--perimeter-access-levels=LEVELS] \ [--perimeter-enable-vpc-accessible-services] \ [--perimeter-vpc-allowed-services=ACCESSIBLE-SERVICES] \ --policy=POLICY_NAME
Ganti kode berikut:
NAME adalah nama perimeter.
Nama perimeter dapat memiliki panjang maksimal 50 karakter, harus diawali dengan huruf, dan hanya boleh berisi huruf Latin ASCII (a-z, A-Z), angka (0-9), atau garis bawah (
_). Nama perimeter peka huruf besar/kecil dan harus unik dalam kebijakan akses.TITLE adalah judul perimeter yang dapat dibaca manusia.
TYPE adalah jenis perimeter. Misalnya, perimeter "reguler" atau perimeter "jembatan".
RESOURCES adalah daftar yang dipisahkan koma untuk satu atau beberapa nomor project atau nama jaringan VPC. Contoh:
projects/12345atau//compute.googleapis.com/projects/my-project/global/networks/vpc1. Hanya project dan jaringan VPC yang diizinkan. Format project:projects/project_number. Format VPC://compute.googleapis.com/projects/project-id/global/networks/network_name. Jika Anda menentukan project, hanya nomor project yang didukung. Anda tidak dapat menggunakan nama atau ID project.RESTRICTED-SERVICES adalah daftar yang dipisahkan koma dari satu atau beberapa layanan. Contoh:
storage.googleapis.comataustorage.googleapis.com,bigquery.googleapis.com.INGRESS-FILENAME adalah file JSON atau YAML yang berisi nilai atribut sumber, identitas, project, dan layanan. Untuk mengetahui daftar atribut aturan ingress, lihat Referensi aturan ingress.
EGRESS-FILENAME adalah file JSON atau YAML yang berisi nilai atribut identitas, project, dan layanan. Untuk daftar atribut aturan traffic keluar, lihat Referensi aturan egress.
POLICY_NAME adalah nama numerik kebijakan akses organisasi Anda. Contoh,
330193482019. Anda hanya perlu menyertakan nama kebijakan jika Anda belum menetapkan kebijakan akses default.
Opsi tambahan:
--access-levelsatau--perimeter-access-levelshanya diperlukan jika Anda ingin menambahkan tingkat akses saat membuat perimeter. LEVELS adalah daftar yang dipisahkan koma dari satu atau beberapa tingkat akses yang ingin Anda terapkan ke perimeter layanan.Anda juga dapat menambahkan tingkat akses setelah membuat perimeter.
--enable-vpc-accessible-servicesdan--vpc-allowed-services, atau--perimeter-enable-vpc-accessible-servicesdan--perimeter-vpc-allowed-serviceshanya diperlukan jika Anda ingin menambahkan layanan yang dapat diakses VPC saat membuat perimeter. ACCESSIBLE-SERVICES adalah daftar yang dipisahkan koma dari satu atau beberapa layanan yang ingin Anda izinkan aksesnya oleh jaringan di dalam perimeter Anda. Akses ke layanan apa pun yang tidak disertakan dalam daftar ini akan dicegah.Anda hanya dapat membuat layanan dapat diakses jika Anda juga melindunginya saat mengonfigurasi perimeter.
Untuk menyertakan semua layanan yang dilindungi oleh perimeter dengan cepat, tetapkan
RESTRICTED-SERVICESdalam daftar untuk ACCESSIBLE-SERVICES. Contoh,--perimeter-vpc-allowed-services=RESTRICTED-SERVICES.Anda juga dapat menentukan layanan yang dapat diakses VPC setelah membuat perimeter.
Misalnya, perintah berikut membuat perimeter mode uji coba baru bernama
ProdPerimeter yang menyertakan project example-project dan
example-project2, serta membatasi Cloud Storage dan
BigQuery API.
gcloud access-context-manager perimeters \ dry-run create ProdPerimeter --perimeter-title="Production Perimeter" \ --perimeter-type="regular" \ --perimeter-resources=projects/12345,projects/67890 \ --perimeter-restricted-services=storage.googleapis.com,bigquery.googleapis.com \ --perimeter-ingress-policies=ingress.yaml \ --perimeter-egress-policies=egress.yaml \ --policy=330193482019
API
Untuk membuat perimeter layanan, panggil
accessPolicies.servicePerimeters.create.
POST https://accesscontextmanager.googleapis.com/v1/accessPolicies/POLICY_NAME/servicePerimeters
Dengan:
- POLICY_NAME adalah nama numerik kebijakan akses organisasi Anda. Contoh,
330193482019.
Isi permintaan
Isi permintaan harus menyertakan resource ServicePerimeter
yang menentukan perimeter layanan.
Untuk resource ServicePerimeter, tetapkan PERIMETER_TYPE_REGULAR untuk
perimeterType.
Mode Uji Coba
Perimeter yang diusulkan harus disertakan sebagai spec dan
useExplicitDryRunSpec yang disetel ke benar.
Isi respons
Jika berhasil, isi respons untuk panggilan berisi resource
Operation yang memberikan detail tentang operasi
POST.
Langkah berikutnya
- Pelajari cara menguji dampak perimeter layanan menggunakan mode uji coba.
- Pelajari cara mengelola perimeter layanan yang ada.
- Pelajari cara memecahkan masalah umum Kontrol Layanan VPC.
- Selesaikan codelab ini untuk mempelajari cara melindungi project dan layanannya menggunakan Kontrol Layanan VPC.
- Pelajari cara menyiapkan dan melihat dasbor pelanggaran.