Memecahkan masalah umum Kontrol Layanan VPC dengan layanan Google Cloud

Halaman ini memberikan solusi untuk masalah yang mungkin Anda alami saat menggunakan layanan Google Cloud yang berada dalam perimeter Kontrol Layanan VPC.

Masalah Cloud Build

Menggunakan resource Cloud Build dalam perimeter Kontrol Layanan VPC memiliki beberapa batasan yang diketahui. Untuk mengetahui informasi selengkapnya, lihat Batasan penggunaan Kontrol Layanan VPC dengan Cloud Build.

Akun layanan Cloud Build diblokir agar tidak dapat mengakses resource yang dilindungi

Cloud Build menggunakan akun layanan Cloud Build untuk menjalankan build atas nama Anda. Secara default, saat Anda menjalankan build di Cloud Build, build tersebut akan berjalan di project tenant di luar project Anda.

VM pekerja Cloud Build yang menghasilkan output build berada di luar perimeter Kontrol Layanan VPC, meskipun project Anda berada di dalam perimeter. Oleh karena itu, agar build dapat mengakses resource dalam perimeter, Anda harus memberikan akses akun layanan Cloud Build ke perimeter Kontrol Layanan VPC dengan menambahkannya ke tingkat akses atau aturan masuk.

Untuk mengetahui informasi selengkapnya, lihat Memberikan akses akun layanan Cloud Build ke perimeter Kontrol Layanan VPC.

Masalah Cloud Storage

Penolakan saat menargetkan bucket Cloud Storage logging yang tidak ada

Jika bucket logging yang ditentukan tidak ada, Kontrol Layanan VPC akan menolak akses dengan alasan pelanggaran RESOURCES_NOT_IN_SAME_SERVICE_PERIMETER.

Anda dapat meninjau log penolakan akses menggunakan ID Unik Kontrol Layanan VPC (vpcServiceControlUniqueIdentifier). Berikut adalah contoh log dengan alasan pelanggaran RESOURCES_NOT_IN_SAME_SERVICE_PERIMETER:

"serviceName": "storage.googleapis.com",
"methodName": "google.storage.buckets.update",
"resourceName": "projects/325183452875",
"metadata": {
  "violationReason": "RESOURCES_NOT_IN_SAME_SERVICE_PERIMETER",
  ...
  "egressViolations": [
    {
      "sourceType": "Resource",
      "targetResource": "projects/0/buckets/this-bucket-does-not-exist",
      "source": "projects/325183452875/buckets/bucket-in-same-project",
      "servicePerimeter": "accessPolicies/875573620132/servicePerimeters/prod_perimeter"
    }]}

Jika kolom targetResource di objek egressViolations menampilkan target dengan projects/0/buckets, hal ini akan selalu memicu penolakan karena projects/0 tidak ada dan dianggap berada di luar perimeter layanan.

Penolakan saat mengakses bucket Cloud Storage publik milik Google

Perimeter layanan tidak dapat memuat project dari organisasi yang berbeda. Perimeter hanya dapat berisi project dari organisasi induknya. Ada batasan tertentu saat Anda ingin mengakses bucket Cloud Storage dari project dalam perimeter Kontrol Layanan VPC yang berada di organisasi yang berbeda.

Contoh umum adalah saat Anda ingin mengakses bucket Cloud Storage milik Google. Karena project Anda dan project milik Google yang berisi bucket target tidak berada dalam perimeter yang sama, Kontrol Layanan VPC akan menolak permintaan dengan alasan pelanggaran RESOURCES_NOT_IN_SAME_SERVICE_PERIMETER.

Untuk mengatasi masalah ini, Anda dapat membuat aturan masuk dan keluar.

Mengakses bucket Cloud Storage yang dapat diakses secara publik dari dalam perimeter

Jika Anda mencoba mengakses bucket Cloud Storage yang dapat diakses secara publik dari dalam perimeter layanan, Kontrol Layanan VPC dapat memblokir permintaan Anda dengan menampilkan pelanggaran traffic keluar.

Untuk memastikan akses yang konsisten dan berhasil ke objek sesuai kebutuhan, kita harus menerapkan aturan traffic keluar ke perimeter layanan yang terpengaruh.

Masalah Security Command Center

Bagian ini mencantumkan masalah yang mungkin Anda alami saat menggunakan resource Security Command Center yang berada di dalam perimeter Kontrol Layanan VPC.

Security Command Center diblokir agar tidak mengirim notifikasi ke Pub/Sub

Mencoba memublikasikan notifikasi Security Command Center ke topik Pub/Sub di dalam perimeter Kontrol Layanan VPC gagal dengan pelanggaran RESOURCES_NOT_IN_SAME_SERVICE_PERIMETER.

Sebaiknya aktifkan Security Command Center di tingkat organisasi. Kontrol Layanan VPC tidak menganggap organisasi induk sebagai bagian dari perimeter project turunannya. Agar dapat berfungsi, Anda harus memberikan akses perimeter ke Security Command Center.

Sebagai solusi, Anda dapat melakukan salah satu hal berikut:

  • Menggunakan topik Pub/Sub dalam project yang tidak berada dalam perimeter layanan.
  • Hapus Pub/Sub API dari perimeter layanan hingga penyiapan notifikasi selesai.

Untuk informasi selengkapnya tentang cara mengaktifkan notifikasi Security Command Center yang dikirim ke topik Pub/Sub, lihat Mengaktifkan notifikasi temuan untuk Pub/Sub.

Security Command Center diblokir agar tidak memindai resource Compute Engine di dalam perimeter

Security Command Center memindai resource Compute Engine di project Anda menggunakan akun layanan per produk, per project (P4SA) service-{project_number}@gcp-sa-computescanning.iam.gserviceaccount.com. Agar Security Command Center dapat mengakses resource di dalam perimeter, P4SA harus ditambahkan ke level akses atau aturan masuk Anda. Jika tidak, Anda mungkin melihat error NO_MATCHING_ACCESS_LEVEL.

Security Command Center diblokir agar tidak memindai resource di dalam perimeter layanan

Security Health Analytics memindai resource dalam project Anda menggunakan P4SA (per produk, akun layanan per project) service-org-ORGANIZATION_ID@security-center-api.iam.gserviceaccount.com. Agar Security Command Center dapat mengakses resource di dalam perimeter, akun P4SA harus ditambahkan ke level akses atau aturan masuk Anda. Jika tidak, Anda akan melihat error NO_MATCHING_ACCESS_LEVEL.

Masalah Google Kubernetes Engine

Bagian ini mencantumkan masalah yang mungkin Anda alami saat menggunakan resource Google Kubernetes Engine yang berada di dalam perimeter Kontrol Layanan VPC.

Autoscaler tidak berfungsi di perimeter dengan layanan yang dapat diakses dan layanan yang dibatasi diaktifkan

autoscaling.googleapis.com tidak terintegrasi dengan Kontrol Layanan VPC, sehingga tidak dapat ditambahkan ke layanan yang dibatasi atau ke layanan yang dapat diakses. Anda tidak dapat mengizinkan autoscaling.googleapis.com API di layanan yang dapat diakses. Oleh karena itu, autoscaler cluster yang ada di perimeter dengan layanan yang dapat diakses mungkin tidak berfungsi.

Sebaiknya jangan gunakan layanan yang dapat diakses. Saat menggunakan IP Virtual (VIP) yang dibatasi, buat pengecualian agar autoscaling.googleapis.com dapat membuka VIP Pribadi dalam perimeter yang berisi cluster dengan penskalaan otomatis.

Masalah BigQuery

Bagian ini mencantumkan masalah yang mungkin Anda alami saat menggunakan resource BigQuery yang berada di dalam perimeter Kontrol Layanan VPC.

Pembatasan perimeter Kontrol Layanan VPC tidak berlaku untuk ekspor hasil kueri BigQuery

Jika Anda mencoba membatasi ekspor data yang dilindungi dari BigQuery ke Google Drive, Google Spreadsheet, atau Looker Studio, Anda mungkin melihat beberapa penyimpangan dari perilaku yang diharapkan. Saat Anda menjalankan kueri dari UI BigQuery, hasilnya disimpan di memori lokal mesin, seperti cache browser. Artinya, hasilnya kini berada di luar Kontrol Layanan VPC, sehingga Anda dapat menyimpan hasilnya ke file CSV atau ke Google Drive.

Dalam skenario ini, Kontrol Layanan VPC berfungsi sebagaimana mestinya karena hasilnya diekspor dari mesin lokal yang berada di luar perimeter layanan, tetapi pembatasan data BigQuery secara keseluruhan telah diakali.

Untuk mengatasi masalah ini, batasi izin IAM untuk pengguna dengan menghapus izin bigquery.tables.export. Perhatikan bahwa tindakan ini akan menonaktifkan semua opsi ekspor.

Masalah GKE Enterprise

Bagian ini mencantumkan masalah yang mungkin Anda alami saat menggunakan resource GKE Enterprise yang berada di dalam perimeter Kontrol Layanan VPC.

Untuk memecahkan masalah error yang terkait dengan penggunaan Kontrol Layanan VPC dengan Cloud Service Mesh, lihat Memecahkan masalah Kontrol Layanan VPC untuk Cloud Service Mesh terkelola.

Penyiapan Pengontrol Konfigurasi GKE Enterprise menghasilkan pelanggaran egress

Proses penyiapan Pengontrol Konfigurasi GKE Enterprise diperkirakan akan gagal jika tidak ada konfigurasi keluar yang memungkinkan untuk menjangkau containerregistry.googleapis.com dengan metode google.containers.registry.read dalam project di luar perimeter.

Untuk mengatasi error ini, buat aturan keluar berikut:

From:
  Identities:ANY_IDENTITY
To:
  Projects =
    NNNNNNNNNNNN
  Service =
  Service name: containerregistry.googleapis.com
  Service methods:
    containers.registry.read

Pelanggaran keluar akan hilang setelah Anda menambahkan aturan ke perimeter yang dilanggar.

Masalah Container Registry

Bagian ini mencantumkan masalah yang mungkin Anda alami saat menggunakan resource Container Registry yang berada di dalam perimeter Kontrol Layanan VPC.

Permintaan Container Registry API diblokir oleh Kontrol Layanan VPC meskipun diizinkan dalam aturan masuk atau keluar

Jika Anda telah mengizinkan akses ke Container Registry menggunakan aturan masuk dengan kolom identity_type ditetapkan ke ANY_USER_ACCOUNT atau ANY_SERVICE_ACCOUNT, akses akan diblokir oleh Kontrol Layanan VPC.

Untuk mengatasi masalah ini, perbarui kolom identity_type menjadi ANY_IDENTITY di aturan masuk atau keluar.

Error egress dari agen layanan saat menyalin image Docker milik Artifact Registry ke project dalam perimeter

Saat mencoba menyalin image milik Artifact Registry ke project yang berada dalam perimeter Kontrol Layanan VPC, Anda mungkin mengalami error traffic keluar dalam log dari agen layanan cloud-cicd-artifact-registry-copier@system.gserviceaccount.com. Error egress ini biasanya terjadi saat kebijakan perimeter berada dalam mode uji coba.

Anda dapat mengatasi masalah ini dengan membuat aturan traffic keluar yang mengizinkan agen layanan cloud-cicd-artifact-registry-copier@system.gserviceaccount.com mengakses layanan storage.googleapis.com di project yang disebutkan dalam log error Kontrol Layanan VPC.

Masalah Vertex AI

Bagian ini mencantumkan masalah yang mungkin Anda alami saat menggunakan resource Vertex AI yang berada di dalam perimeter Kontrol Layanan VPC.

Permintaan API notebook yang dikelola pengguna diblokir oleh Kontrol Layanan VPC meskipun diizinkan dalam aturan traffic masuk atau keluar

Jika Anda telah mengizinkan akses ke API notebook yang dikelola pengguna menggunakan kebijakan masuk dan telah menetapkan identity_type sebagai ANY_USER_ACCOUNT atau ANY_SERVICE_ACCOUNT, Kontrol Layanan VPC akan memblokir akses ke API.

Untuk mengatasi masalah ini, perbarui kolom identity_type menjadi ANY_IDENTITY di aturan masuk atau keluar.

Masalah Spanner

Pencadangan database Spanner diblokir oleh pelanggaran NO_MATCHING_ACCESS_LEVEL dari akun layanan per produk, per project (P4SA) service-PROJECT_NUMBER@gcf-admin-robot.iam.gserviceaccount.com.

Untuk mengatasi masalah ini, tambahkan aturan masuk dengan agen layanan yang disebutkan di atas atau tambahkan ke tingkat akses.

Langkah selanjutnya