Keamanan Private Service Connect
Halaman ini berisi ringkasan keamanan Private Service Connect.
Private Service Connect menyediakan beberapa kontrol untuk mengelola akses ke resource Private Service Connect. Anda dapat mengontrol pihak yang dapat men-deploy resource Private Service Connect, apakah koneksi dapat dibuat antara konsumen dan produsen, dan traffic jaringan mana yang diizinkan untuk mengakses koneksi tersebut.
Kontrol ini diimplementasikan dengan menggunakan elemen-elemen berikut:
- Izin Identity and Access Management (IAM) menentukan akun utama IAM yang diizinkan untuk men-deploy resource Private Service Connect, seperti endpoint, backend, dan layanan Identity and Access Management Akun utama IAM adalah Akun Google, akun layanan, grup Google, akun Google Workspace, atau domain Cloud Identity yang dapat mengakses resource.
- Daftar penerimaan dan penolakan Private Service Connect dan kebijakan organisasi menentukan apakah koneksi Private Service Connect dapat ditetapkan antara konsumen individu dan produsen.
- Aturan firewall VPC menentukan apakah traffic TCP atau UDP tertentu diizinkan untuk mengakses koneksi Private Service Connect.
Gambar 1 menjelaskan cara interaksi kontrol pada koneksi Private Service Connect sisi konsumen dan produsen.
IAM
Referensi: semua
Setiap resource Private Service Connect diatur oleh satu izin IAM atau lebih. Dengan izin-izin tersebut, administrator dapat menerapkan akun utama IAM yang dapat men-deploy resource Private Service Connect.
IAM tidak mengatur mana akun utama IAM yang dapat terhubung atau menggunakan koneksi Private Service Connect. Untuk mengontrol endpoint atau backend yang dapat membuat koneksi dengan layanan, gunakan kebijakan organisasi atau daftar penerimaan konsumen. Untuk mengontrol klien mana yang dapat mengirim traffic ke resource Private Service Connect, gunakan firewall VPC atau kebijakan firewall.
Untuk mengetahui informasi selengkapnya tentang izin IAM, lihat izin IAM.
Untuk mengetahui informasi tentang izin yang diperlukan untuk membuat enpdoint, lihat Membuat endpoint.
Untuk mengetahui informasi tentang izin yang diperlukan untuk membuat lampiran layanan, lihat Memublikasikan layanan dengan persetujuan eksplisit.
Status koneksi
Resource: endpoint, backend, dan lampiran layanan
Endpoint, backend, dan lampiran layanan Private Service Connect memiliki status koneksi yang mendeskripsikan status koneksinya. Resource konsumen dan produsen yang membentuk dua sisi koneksi selalu memiliki status yang sama. Anda dapat melihat status koneksi saat melihat detail endpoint, mendeskripsikan backend, atau melihat detail untuk layanan yang dipublikasikan.
Tabel berikut menjelaskan kemungkinan status.
Status koneksi | Deskripsi |
---|---|
Diterima | Koneksi Private Service Connect sudah terhubung. Kedua jaringan VPC memiliki konektivitas, dan koneksinya berfungsi secara normal. |
Tertunda | Koneksi Private Service Connect tidak terhubung, dan traffic jaringan tidak dapat berpindah di antara dua jaringan. Koneksi mungkin memiliki status ini karena alasan berikut:
Koneksi yang diblokir karena alasan ini akan tetap dalam status tertunda tanpa batas waktu hingga masalah yang mendasarinya teratasi. |
Ditolak | Koneksi Private Service Connect tidak terhubung. Traffic jaringan tidak dapat berpindah di antara dua jaringan. Koneksi mungkin memiliki status ini karena alasan berikut:
|
Perlu diperhatikan atau Tidak ditentukan | Ada masalah pada koneksi sisi produsen. Beberapa traffic mungkin dapat berjalan di antara dua jaringan, tetapi beberapa koneksi mungkin tidak berfungsi. Misalnya, subnet NAT produsen mungkin habis dan tidak dapat mengalokasikan alamat IP untuk koneksi baru. |
Ditutup | Lampiran layanan dihapus, dan koneksi Private Service Connect ditutup. Traffic jaringan tidak dapat berpindah di antara dua jaringan. Koneksi tertutup adalah status terminal. Untuk memulihkan koneksi, Anda harus membuat ulang lampiran layanan dan endpoint atau backend. |
Konfigurasi lampiran layanan
Anda dapat mengontrol konsumen mana yang dapat terhubung ke lampiran layanan dengan menggunakan fitur berikut.
Preferensi koneksi
Resource: endpoint dan backend
Setiap lampiran layanan memiliki preferensi koneksi yang menentukan apakah permintaan koneksi akan diterima secara otomatis atau tidak. Ada tiga opsi:
- Terima semua koneksi secara otomatis. Lampiran layanan otomatis menerima semua permintaan koneksi masuk dari pelanggan mana pun. Persetujuan otomatis dapat diganti dengan kebijakan organisasi yang memblokir koneksi masuk.
- Terima koneksi untuk jaringan yang dipilih. Lampiran layanan hanya menerima permintaan koneksi masuk jika jaringan VPC konsumen ada dalam daftar penerimaan konsumen lampiran layanan.
- Terima koneksi untuk project yang dipilih. Lampiran layanan hanya menerima permintaan koneksi masuk jika project konsumen tercantum dalam daftar penerimaan konsumen lampiran layanan.
Sebaiknya terima koneksi untuk project atau jaringan yang dipilih. Menerima semua koneksi secara otomatis mungkin sesuai jika Anda mengontrol akses konsumen melalui cara lain dan ingin mengaktifkan akses permisif ke layanan Anda.
Daftar penerimaan dan penolakan
Resource: endpoint dan backend
Daftar penerimaan konsumen dan daftar penolakan konsumen adalah fitur keamanan lampiran layanan. Dengan daftar penerimaan dan penolakan, produsen layanan dapat menentukan konsumen mana yang dapat membuat koneksi Private Service Connect ke layanan mereka. Daftar penerimaan konsumen menentukan apakah koneksi diterima, dan daftar penolakan konsumen menentukan apakah koneksi ditolak. Kedua daftar tersebut memungkinkan Anda menentukan konsumen berdasarkan jaringan VPC atau project resource yang terhubung. Jika Anda menambahkan project atau jaringan ke daftar penerimaan dan penolakan, permintaan koneksi dari project atau jaringan tersebut akan ditolak. Menentukan konsumen berdasarkan folder tidak didukung.
Daftar penerimaan konsumen dan daftar penolakan konsumen memungkinkan Anda menentukan project atau jaringan VPC, tetapi tidak keduanya secara bersamaan. Anda dapat mengubah daftar dari satu jenis ke jenis lainnya tanpa mengganggu koneksi, tetapi Anda harus melakukan perubahan dalam satu update. Jika tidak, beberapa koneksi mungkin berubah ke status tertunda untuk sementara.
Daftar konsumen mengontrol apakah endpoint dapat terhubung ke layanan yang dipublikasikan, tetapi tidak mengontrol siapa yang dapat mengirim permintaan ke endpoint tersebut. Misalnya, konsumen memiliki
jaringan VPC Bersama
yang memiliki dua project layanan yang terpasang. Jika layanan yang dipublikasikan memiliki service-project1
dalam daftar penerimaan konsumen, dan service-project2
dalam daftar penolakan konsumen, hal berikut berlaku:
-
Konsumen di
service-project1
dapat membuat endpoint yang terhubung ke layanan yang dipublikasikan. -
Konsumen di
service-project2
tidak dapat membuat endpoint yang terhubung ke layanan yang dipublikasikan. -
Klien di
service-project2
dapat mengirim permintaan ke endpoint diservice-project1
, jika tidak ada aturan atau kebijakan firewall yang mencegah traffic tersebut.
Saat Anda memperbarui daftar penerimaan atau penolakan konsumen, efek pada koneksi yang ada akan bervariasi tergantung pada apakah rekonsiliasi koneksi diaktifkan atau tidak. Untuk mengetahui informasi selengkapnya, lihat Rekonsiliasi koneksi.
Untuk mengetahui informasi tentang cara membuat lampiran layanan baru yang berisi daftar penerimaan atau penolakan konsumen, lihat Memublikasikan layanan dengan persetujuan project eksplisit.
Untuk mengetahui informasi tentang cara memperbarui daftar penerimaan atau penolakan konsumen, lihat Mengelola permintaan akses ke layanan yang dipublikasikan.
Batas koneksi
Resource: endpoint dan backend
Daftar penerimaan konsumen memiliki batas koneksi. Batas ini menetapkan jumlah total koneksi endpoint dan backend Private Service Connect yang dapat diterima lampiran layanan dari project konsumen atau jaringan VPC yang ditentukan.
Produsen dapat menggunakan batas koneksi agar konsumen perorangan tidak kehabisan alamat IP atau kuota resource di jaringan VPC produsen. Setiap koneksi Private Service Connect yang diterima mengurangi batas yang dikonfigurasi untuk project konsumen atau jaringan VPC. Batas ditetapkan saat Anda membuat atau mengupdate daftar penerimaan konsumen. Anda dapat melihat koneksi lampiran layanan saat menjelaskan lampiran layanan.
Misalnya, pertimbangkan kasus saat lampiran layanan memiliki daftar penerimaan konsumen yang menyertakan project-1
dan project-2
, keduanya dengan batas satu koneksi. Project project-1
meminta dua koneksi, project-2
meminta satu koneksi, dan project-3
meminta satu koneksi. Karena project-1
memiliki batas satu koneksi, koneksi pertama diterima, dan koneksi kedua tetap tertunda.
Koneksi dari project-2
diterima, dan koneksi dari project-3
tetap tertunda. Koneksi kedua dari project-1
dapat diterima dengan meningkatkan batas untuk project-1
. Jika project-3
ditambahkan ke daftar penerimaan konsumen, koneksi tersebut akan bertransisi dari menunggu keputusan menjadi diterima.
Kebijakan organisasi
Dengan kebijakan organisasi, Anda memiliki keleluasaan untuk mengontrol project mana yang dapat terhubung ke jaringan atau organisasi VPC menggunakan Private Service Connect.
Kebijakan organisasi yang dijelaskan di halaman ini dapat memblokir atau menolak koneksi Private Service Connect baru, tetapi tidak akan memengaruhi koneksi yang ada.
Kebijakan organisasi berlaku untuk turunan resource yang dirujuknya sesuai dengan evaluasi hierarki. Misalnya, kebijakan organisasi yang membatasi akses ke organisasi Google Cloud juga berlaku untuk folder turunan, project, dan resource organisasi. Demikian pula, mencantumkan organisasi sebagai nilai yang diizinkan juga akan mengizinkan akses ke turunan organisasi tersebut.
Untuk mengetahui informasi lebih lanjut tentang kebijakan organisasi, lihat Kebijakan organisasi.
Kebijakan organisasi sisi konsumen
Anda dapat menggunakan batasan daftar untuk mengontrol deployment endpoint dan backend. Jika endpoint atau backend diblokir oleh kebijakan organisasi konsumen, pembuatan resource akan gagal.
- Gunakan batasan daftar
restrictPrivateServiceConnectProducer
untuk mengontrol endpoint dan backend lampiran layanan mana yang dapat terhubung berdasarkan organisasi produsen. - Gunakan batasan daftar
disablePrivateServiceConnectCreationForConsumers
untuk mengontrol deployment endpoint berdasarkan jenis koneksi endpoint. Anda dapat memblokir deployment endpoint yang terhubung ke Google API, atau memblokir deployment endpoint yang terhubung ke layanan yang dipublikasikan.
Memblokir endpoint atau backend agar tidak terhubung ke organisasi produsen
Resource: endpoint dan backend
Kebijakan organisasi yang menggunakan batasan daftar restrictPrivateServiceConnectProducer
dengan nilai yang diizinkan akan memblokir endpoint dan backend agar tidak terhubung
ke lampiran layanan, kecuali jika lampiran layanan dikaitkan dengan salah satu
nilai yang diizinkan oleh kebijakan. Kebijakan jenis ini akan memblokir koneksi meskipun
diizinkan oleh daftar penerimaan konsumen lampiran layanan.
Misalnya, kebijakan organisasi berikut berlaku untuk organisasi bernama
Org-A
:
name: organizations/Org-A/policies/compute.restrictPrivateServiceConnectProducer
spec:
rules:
– values:
allowedValues:
- under:organizations/ORG_A_NUMBER
- under:organizations/433637338589
Gambar 2 menunjukkan hasil dari kebijakan organisasi ini. Kebijakan ini telah mengizinkan
nilai untuk Org-A
(ORG_A_NUMBER
) dan
Google-org
(433637338589
). Endpoint dan backend
yang dibuat di Org-A
dapat berkomunikasi dengan lampiran layanan di
Org-A
, tetapi tidak dengan lampiran layanan di Org-B
.
Anda dapat mengizinkan instance dari jenis resource berikut untuk membuat endpoint
dengan batasan compute.restrictPrivateServiceConnectProducer
:
- Organisasi
- Folder
- Project
Untuk mengetahui informasi tentang cara membuat kebijakan organisasi yang menggunakan batasan
compute.restrictPrivateServiceConnectProducer
, lihat
Memblokir endpoint dan backend agar tidak terhubung ke lampiran layanan yang tidak sah.
Memblokir pembuatan endpoint berdasarkan jenis koneksi
Resource yang terpengaruh: endpoint
Anda dapat menggunakan batasan daftar disablePrivateServiceConnectCreationForConsumers
untuk memblokir pembuatan endpoint berdasarkan apakah endpoint tersebut terhubung ke Google API atau layanan yang dipublikasikan (lampiran layanan).
Untuk mengetahui informasi tentang cara membuat kebijakan organisasi yang menggunakan batasan
disablePrivateServiceConnectCreationForConsumers
, lihat
Memblokir konsumen agar tidak men-deploy endpoint berdasarkan jenis koneksi.
Kebijakan organisasi sisi produsen
Resource yang terpengaruh: endpoint dan backend
Anda dapat menggunakan kebijakan organisasi dengan
batasan daftar
compute.restrictPrivateServiceConnectConsumer
untuk mengontrol endpoint dan backend yang dapat
terhubung ke lampiran layanan Private Service Connect dalam suatu
organisasi atau project produsen. Jika endpoint atau backend ditolak oleh
kebijakan organisasi produsen, pembuatan resource akan berhasil, tetapi
koneksi akan memasuki status ditolak.
Mengontrol akses dengan cara ini mirip dengan menggunakan daftar penerimaan dan penolakan, kecuali jika kebijakan organisasi berlaku untuk semua lampiran layanan dalam project atau organisasi, bukan lampiran layanan individual.
Anda dapat menggunakan kebijakan organisasi dan daftar penerimaan secara bersamaan, di mana kebijakan organisasi secara luas menerapkan akses ke layanan terkelola, sementara daftar penerimaan mengontrol akses ke lampiran layanan individual.
Kebijakan organisasi yang menggunakan batasan compute.restrictPrivateServiceConnectConsumer
menolak koneksi dari endpoint dan backend, kecuali jika endpoint atau backend dikaitkan dengan salah satu nilai yang diizinkan oleh kebijakan. Kebijakan jenis ini akan menolak koneksi
meskipun koneksi tersebut diizinkan oleh daftar yang diizinkan.
Misalnya, kebijakan organisasi berikut berlaku untuk organisasi bernama Org-A:
name: organizations/Org-A/policies/compute.restrictPrivateServiceConnectConsumer
spec:
rules:
- values:
allowedValues:
- under:organizations/ORG_A_NUMBER
Gambar 3 menunjukkan hasil dari kebijakan organisasi ini. Kebijakan ini memiliki nilai yang diizinkan
untuk Org-A
(ORG_A_NUMBER
). Endpoint
di jaringan VPC lain di Org-A
dapat terhubung ke lampiran
layanan di Org-A
. Endpoint di Org-B
yang mencoba terhubung akan ditolak.
Kebijakan organisasi berlaku untuk turunan resource yang dirujuknya sesuai dengan evaluasi hierarki. Misalnya, kebijakan organisasi yang membatasi akses ke organisasi Google Cloud juga berlaku untuk folder turunan, project, dan resource organisasi. Demikian pula, mencantumkan organisasi sebagai nilai yang diizinkan juga akan mengizinkan akses ke turunan organisasi tersebut.
Anda dapat mengizinkan instance dari jenis resource berikut untuk membuat endpoint
dengan batasan restrictPrivateServiceConnectConsumer
:
- Organisasi
- Folder
- Project
Untuk mengetahui informasi selengkapnya tentang cara menggunakan kebijakan organisasi dengan produsen layanan, lihat Kebijakan organisasi produsen.
Interaksi antara daftar penerimaan konsumen dan kebijakan organisasi
Daftar penerimaan konsumen dan kebijakan organisasi mengontrol apakah koneksi dapat dibuat antara dua resource Private Service Connect. Koneksi akan diblokir jika daftar penerimaan atau kebijakan organisasi menolak koneksi.
Misalnya, kebijakan dengan batasan restrictPrivateServiceConnectConsumer
dapat
dikonfigurasi untuk memblokir koneksi dari luar organisasi produsen. Meskipun
lampiran layanan dikonfigurasi untuk menerima semua koneksi secara otomatis, kebijakan organisasi
tetap akan memblokir koneksi dari luar organisasi produsen. Sebaiknya gunakan daftar penerimaan dan kebijakan organisasi secara bersamaan untuk membantu memberikan keamanan berlapis.
Firewall
Referensi: semua
Anda dapat menggunakan aturan firewall VPC dan kebijakan firewall untuk mengontrol akses tingkat jaringan ke resource Private Service Connect.
Untuk mengetahui informasi selengkapnya tentang aturan firewall VPC secara umum, lihat Aturan firewall VPC.
Untuk mengetahui informasi lebih lanjut tentang penggunaan aturan firewall VPC untuk membatasi akses ke endpoint atau backend di jaringan VPC konsumen, lihat Menggunakan aturan firewall untuk membatasi akses ke endpoint atau backend.