Menyiapkan Kontrol Layanan VPC untuk BigQuery Omni

Dokumen ini menjelaskan cara menyiapkan kebijakan traffic keluar yang membatasi akses hanya ke resource cloud eksternal tertentu dari dalam perimeter Kontrol Layanan VPC.

Anda dapat menggunakan perimeter Kontrol Layanan VPC untuk membatasi akses dari BigQuery Omni ke cloud eksternal. Kontrol Layanan VPC memberikan lapisan pertahanan keamanan tambahan untuk layanan Google Cloud yang tidak bergantung pada Identity and Access Management (IAM). Misalnya, dengan menyiapkan perimeter Kontrol Layanan VPC, Anda dapat membatasi ekspor dari tabel BigQuery Omni ke bucket Amazon Simple Storage Service (Amazon S3) tertentu.

Untuk mempelajari lebih lanjut tentang Kontrol Layanan VPC, baca Ringkasan Kontrol Layanan VPC.

Sebelum memulai

Pastikan Anda memiliki izin yang diperlukan untuk mengonfigurasi perimeter layanan. Untuk melihat daftar peran IAM yang diperlukan untuk mengonfigurasi Kontrol Layanan VPC, lihat Kontrol akses dengan IAM dalam dokumentasi Kontrol Layanan VPC.

Menyiapkan Kontrol Layanan VPC menggunakan konsol Google Cloud

  1. Di menu navigasi konsol Google Cloud, klik Keamanan, lalu klik Kontrol Layanan VPC.

    Buka Kontrol Layanan VPC

  2. Guna menyiapkan Kontrol Layanan VPC untuk BigQuery Omni, ikuti langkah-langkah dalam panduan Membuat perimeter layanan, dan ketika Anda membuka panel Aturan traffic keluar, ikuti langkah-langkah berikut:

    1. Di panel Aturan traffic keluar, klik Tambahkan aturan.

    2. Di bagian Dari atribut klien API, pilih salah satu opsi dari daftar Identitas.

    3. Pilih Ke atribut resource eksternal.

    4. Untuk menambahkan resource eksternal, klik Tambahkan resource eksternal.

    5. Dalam dialog Tambahkan resource eksternal, untuk Nama resource eksternal, masukkan nama resource yang valid. Contoh:

      • Untuk Amazon Simple Storage Service (Amazon S3): s3://BUCKET_NAME

        Ganti BUCKET_NAME dengan nama bucket Amazon S3 Anda.

      • Untuk Azure Blob Storage: azure://myaccount.blob.core.windows.net/CONTAINER_NAME

        Ganti CONTAINER NAME dengan nama container Blob Storage Anda.

      Untuk mengetahui daftar atribut aturan traffic keluar, lihat Referensi aturan traffic keluar.

    6. Pilih metode yang ingin Anda izinkan di resource eksternal:

      1. Jika Anda ingin mengizinkan semua metode, pilih Semua metode dalam daftar Metode.
      2. Jika ingin mengizinkan metode tertentu, pilih Metode yang dipilih, klik Pilih metode, lalu pilih metode yang ingin Anda izinkan di resource eksternal.
    7. Klik Buat perimeter.

Menyiapkan Kontrol Layanan VPC menggunakan gcloud CLI

Untuk menyiapkan Kontrol Layanan VPC menggunakan gcloud CLI, ikuti langkah-langkah berikut:

  1. Tetapkan kebijakan akses default.
  2. Buat file input kebijakan traffic keluar.
  3. Tambahkan kebijakan traffic keluar.

Menetapkan kebijakan akses default

Kebijakan akses adalah container berskala organisasi untuk tingkat akses dan perimeter layanan. Untuk informasi tentang cara menetapkan kebijakan akses default atau mendapatkan nama kebijakan akses, lihat Mengelola kebijakan akses.

Membuat file input kebijakan traffic keluar

Blok aturan traffic keluar menentukan akses yang diizinkan dari dalam perimeter ke resource di luar perimeter tersebut. Untuk resource eksternal, properti externalResources menentukan jalur resource eksternal yang diizinkan untuk akses dari dalam perimeter Kontrol Layanan VPC Anda.

Aturan traffic keluar dapat dikonfigurasi menggunakan file JSON atau file YAML. Contoh berikut menggunakan format .yaml:

- egressTo:
    operations:
    - serviceName: bigquery.googleapis.com
      methodSelectors:
      - method: "*"
      *OR*
      - permission: "externalResource.read"
    externalResources:
      - EXTERNAL_RESOURCE_PATH
  egressFrom:
    identityType: IDENTITY_TYPE
    *OR*
    identities:
    - serviceAccount:SERVICE_ACCOUNT
  • egressTo: memulai blok to, yang mencantumkan operasi layanan yang diizinkan pada resource Google Cloud dalam project tertentu di luar perimeter.

  • operations: daftar layanan dan tindakan atau metode yang dapat diakses dan diizinkan untuk diakses oleh klien yang memenuhi kondisi blok from.

  • serviceName: untuk BigQuery Omni, tetapkan ke bigquery.googleapis.com.

  • methodSelectors: daftar metode yang diizinkan untuk diakses oleh klien yang memenuhi kondisi blok from. Untuk mengetahui daftar metode dan izin yang dapat dibatasi untuk layanan, lihat Pembatasan metode layanan yang didukung.

  • method atau permission: kolom method dapat berupa metode layanan yang valid, atau dapat ditetapkan ke \"*\" untuk mengizinkan akses ke semua metode layanan yang ditentukan.

    Kolom permission harus berupa izin layanan yang valid, seperti \"*\", externalResource.read, atau externalResource.write. Akses ke resource tertentu di luar perimeter diizinkan untuk operasi yang memerlukan izin ini.

  • externalResources: daftar resource eksternal yang dapat diakses oleh klien dalam perimeter. Ganti EXTERNAL_RESOURCE_PATH dengan bucket Amazon S3 yang valid, seperti s3://bucket_name, atau jalur container Blob Storage, seperti azure://myaccount.blob.core.windows.net/container_name.

  • egressFrom: memulai blok from, yang mencantumkan operasi layanan yang diizinkan pada resource Google Cloud di project tertentu dalam perimeter.

  • identityType atau identities: atribut identityType menentukan jenis identitas yang dapat digunakan untuk mengakses resource tertentu di luar perimeter. Ganti IDENTITY_TYPE dengan salah satu nilai valid berikut:

    • ANY_IDENTITY: untuk mengizinkan semua identitas.
    • ANY_USER_ACCOUNT: untuk mengizinkan semua pengguna.
    • ANY_SERVICE_ACCOUNT: untuk mengizinkan semua akun layanan

    Atribut identities adalah daftar akun layanan yang dapat mengakses resource tertentu di luar perimeter.

  • serviceAccount (opsional): ganti SERVICE_ACCOUNT dengan akun layanan yang dapat mengakses resource tertentu di luar perimeter.

Contoh

Contoh berikut adalah kebijakan yang mengizinkan operasi traffic keluar dari dalam perimeter ke lokasi Amazon S3 s3://mybucket di AWS.

- egressTo:
    operations:
    - serviceName: bigquery.googleapis.com
      methodSelectors:
      - method: "*"
    externalResources:
      - s3://mybucket
      - s3://mybucket2
  egressFrom:
    identityType: ANY_IDENTITY

Contoh berikut mengizinkan operasi traffic keluar ke container Blob Storage:

- egressTo:
    operations:
    - serviceName: bigquery.googleapis.com
      methodSelectors:
      - method: "*"
    externalResources:
      - azure://myaccount.blob.core.windows.net/mycontainer
  egressFrom:
    identityType: ANY_IDENTITY

Untuk informasi selengkapnya tentang kebijakan traffic keluar, lihat Referensi aturan traffic keluar.

Menambahkan kebijakan traffic keluar

Untuk menambahkan kebijakan traffic keluar saat Anda membuat perimeter layanan baru, gunakan perintah gcloud access-context-manager perimeters create. Misalnya, perintah berikut membuat perimeter baru bernama omniPerimeter yang menyertakan project dengan nomor project 12345, membatasi BigQuery API, dan menambahkan kebijakan traffic keluar yang ditentukan dalam file egress.yaml:

gcloud access-context-manager perimeters create omniPerimeter \
    --title="Omni Perimeter" \
    --resources=projects/12345 \
    --restricted-services=bigquery.googleapis.com \
    --egress-policies=egress.yaml

Untuk menambahkan kebijakan traffic keluar ke perimeter layanan yang ada, gunakan perintah gcloud access-context-manager perimeters update. Misalnya, perintah berikut menambahkan kebijakan traffic keluar yang ditentukan dalam file egress.yaml ke perimeter layanan yang ada bernama omniPerimeter:

gcloud access-context-manager perimeters update omniPerimeter
    --set-egress-policies=egress.yaml

Memverifikasi perimeter Anda

Untuk memverifikasi perimeter, gunakan perintah gcloud access-context-manager perimeters describe:

gcloud access-context-manager perimeters describe PERIMETER_NAME

Ganti PERIMETER_NAME dengan nama perimeter.

Misalnya, perintah berikut menjelaskan perimeter omniPerimeter:

gcloud access-context-manager perimeters describe omniPerimeter

Untuk mengetahui informasi selengkapnya, lihat Mengelola perimeter layanan.

Langkah berikutnya