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
Di menu navigasi konsol Google Cloud, klik Keamanan, lalu klik Kontrol Layanan VPC.
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:
Di panel Aturan traffic keluar, klik Tambahkan aturan.
Di bagian Dari atribut klien API, pilih salah satu opsi dari daftar Identitas.
Pilih Ke atribut resource eksternal.
Untuk menambahkan resource eksternal, klik Tambahkan resource eksternal.
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.
Pilih metode yang ingin Anda izinkan di resource eksternal:
- Jika Anda ingin mengizinkan semua metode, pilih Semua metode dalam daftar Metode.
- Jika ingin mengizinkan metode tertentu, pilih Metode yang dipilih, klik Pilih metode, lalu pilih metode yang ingin Anda izinkan di resource eksternal.
Klik Buat perimeter.
Menyiapkan Kontrol Layanan VPC menggunakan gcloud CLI
Untuk menyiapkan Kontrol Layanan VPC menggunakan gcloud CLI, ikuti langkah-langkah berikut:
- Tetapkan kebijakan akses default.
- Buat file input kebijakan traffic keluar.
- 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 blokto
, 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 blokfrom
.serviceName
: untuk BigQuery Omni, tetapkan kebigquery.googleapis.com
.methodSelectors
: daftar metode yang diizinkan untuk diakses oleh klien yang memenuhi kondisi blokfrom
. Untuk mengetahui daftar metode dan izin yang dapat dibatasi untuk layanan, lihat Pembatasan metode layanan yang didukung.method
ataupermission
: kolommethod
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
, atauexternalResource.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, sepertis3://bucket_name
, atau jalur container Blob Storage, sepertiazure://myaccount.blob.core.windows.net/container_name
.egressFrom
: memulai blokfrom
, yang mencantumkan operasi layanan yang diizinkan pada resource Google Cloud di project tertentu dalam perimeter.identityType
atauidentities
: atributidentityType
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
- Pelajari cara mengekspor hasil kueri ke Amazon S3.
- Pelajari cara mengekspor hasil kueri ke Blob Storage.