Membatasi akses dengan kontrol akses tingkat kolom

Halaman ini menjelaskan cara menggunakan kontrol akses tingkat kolom BigQuery untuk membatasi akses ke data BigQuery di tingkat kolom. Untuk informasi umum tentang kontrol akses tingkat kolom, lihat Pengantar kontrol akses tingkat kolom BigQuery.

Petunjuk di halaman ini menggunakan BigQuery dan Data Catalog.

Anda harus memperbarui skema tabel untuk menetapkan tag kebijakan di kolom. Anda dapat menggunakan Konsol Google Cloud, alat command line bq, dan BigQuery API untuk menetapkan tag kebijakan di kolom. Selain itu, Anda dapat membuat tabel, menentukan skema, dan menentukan tag kebijakan dalam satu operasi menggunakan teknik berikut:

  • Perintah bq mk dan bq load alat command line bq.
  • Metode API tables.insert.
  • Halaman Create table di Konsol Google Cloud. Jika menggunakan Konsol Google Cloud, Anda harus memilih Edit as text saat menambahkan atau mengedit skema.

Untuk meningkatkan kontrol akses tingkat kolom, Anda dapat secara opsional menggunakan penyamaran data dinamis. Penyamaran data memungkinkan Anda menyamarkan data sensitif dengan mengganti konten null, default, atau yang di-hash sebagai pengganti nilai aktual kolom.

Sebelum memulai

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Data Catalog and BigQuery Data Policy APIs.

    Enable the APIs

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Enable the Data Catalog and BigQuery Data Policy APIs.

    Enable the APIs

  8. BigQuery secara otomatis diaktifkan di project baru, tetapi Anda mungkin harus mengaktifkannya di project yang sudah ada.

    Enable the BigQuery API.

    Enable the API

Peran dan izin

Ada beberapa peran yang terkait dengan tag kebijakan untuk pengguna dan akun layanan.

  • Pengguna atau akun layanan yang mengelola tag kebijakan harus memiliki peran Data Catalog Policy Tag Admin. Peran Policy Tag Admin dapat mengelola taksonomi dan tag kebijakan, dan dapat memberikan atau menghapus peran IAM yang terkait dengan tag kebijakan.
  • Pengguna atau akun layanan yang menerapkan kontrol akses untuk kontrol akses tingkat kolom harus memiliki peran BigQuery Admin atau peran BigQuery Data Owner. Peran BigQuery dapat mengelola kebijakan data yang digunakan untuk menerapkan kontrol akses pada taksonomi.
  • Untuk melihat taksonomi dan tag kebijakan untuk semua project dalam organisasi di konsol Google Cloud, pengguna memerlukan peran Organization Viewer. Jika tidak, konsol hanya akan menampilkan taksonomi dan tag kebijakan yang terkait dengan project yang dipilih.
  • Pengguna atau akun layanan yang membuat kueri data yang dilindungi oleh kontrol akses tingkat kolom harus memiliki peran Data Catalog Fine-Grained Reader untuk mengakses data tersebut.

Untuk informasi selengkapnya tentang semua peran terkait tag kebijakan, lihat Peran yang digunakan dengan kontrol akses tingkat kolom.

Peran Data Catalog Policy Tag Admin

Peran Data Catalog Policy Tag Admin dapat membuat dan mengelola tag kebijakan data.

Untuk memberikan peran Policy Tag Admin, Anda harus memiliki izin resourcemanager.projects.setIamPolicy di project yang ingin Anda berikan peran tersebut. Jika Anda tidak memiliki izin resourcemanager.projects.setIamPolicy, minta Project Owner untuk memberi Anda izin atau melakukan langkah-langkah berikut untuk Anda.

  1. Di Konsol Google Cloud, buka halaman IAM.

    Buka halaman IAM

  2. Jika alamat email pengguna yang akan diberi peran ada dalam daftar, pilih alamat email, lalu klik Edit. Panel Edit akses akan terbuka. Klik Tambahkan peran lain.

    Jika alamat email pengguna tidak ada dalam daftar, klik Tambahkan, lalu masukkan alamat email di kotak New principals.

  3. Klik menu drop-down Select a role.

  4. Di bagian Menurut produk atau layanan, klik Data Catalog. Di Peran, klik Admin Tag Kebijakan.

  5. Klik Simpan.

Peran BigQuery Data Policy Admin, BigQuery Admin, dan BigQuery Data Owner

Peran BigQuery Data Policy Admin, BigQuery Admin, dan BigQuery Data Owner dapat mengelola kebijakan data.

Untuk memberikan salah satu peran ini, Anda harus memiliki izin resourcemanager.projects.setIamPolicy pada project yang ingin Anda berikan peran tersebut. Jika Anda tidak memiliki izin resourcemanager.projects.setIamPolicy, minta Project Owner untuk memberi Anda izin atau melakukan langkah-langkah berikut untuk Anda.

  1. Di Konsol Google Cloud, buka halaman IAM.

    Buka halaman IAM

  2. Jika alamat email pengguna yang akan diberi peran ada dalam daftar, pilih alamat email, lalu klik Edit. Kemudian, klik Add another role.

    Jika alamat email pengguna tidak ada dalam daftar, klik Tambahkan, lalu masukkan alamat email di kotak New principals.

  3. Klik menu drop-down Select a role.

  4. Klik BigQuery, lalu klik BigQuery Data Policy Admin atau BigQuery Admin atau *BigQuery Data Owner.

  5. Klik Simpan.

Peran Organization Viewer

Peran Organization Viewer memungkinkan pengguna melihat detail tentang resource organisasi mereka. Untuk memberikan peran ini, Anda harus memiliki izin resourcemanager.organizations.setIamPolicy di organisasi.

Peran Data Catalog Fine-Grained Reader

Pengguna yang memerlukan akses ke data yang dilindungi dengan kontrol akses tingkat kolom memerlukan peran Data Catalog Fine-Grained Reader. Peran ini ditetapkan ke akun utama sebagai bagian dari konfigurasi tag kebijakan.

Untuk memberikan peran Fine-Grained Reader kepada pengguna di tag kebijakan, Anda harus memiliki izin datacatalog.taxonomies.setIamPolicy pada project yang berisi taksonomi tag kebijakan tersebut. Jika Anda tidak memiliki izin datacatalog.taxonomies.setIamPolicy, minta Project Owner untuk memberi Anda izin atau melakukan tindakan untuk Anda.

Untuk petunjuk baca bagian Menetapkan izin pada tag kebijakan.

Menyiapkan kontrol akses tingkat kolom

Siapkan kontrol akses tingkat kolom dengan menyelesaikan tugas-tugas berikut:

  • Buat taksonomi tag kebijakan.
  • Kaitkan akun utama dengan tag kebijakan dan berikan peran Fine-Grained Reader Data Catalog kepada akun utama.
  • Kaitkan tag kebijakan dengan kolom tabel BigQuery.
  • Terapkan kontrol akses pada taksonomi yang berisi tag kebijakan.

Membuat taksonomi

Pengguna atau akun layanan yang membuat taksonomi harus diberi peran Data Catalog Policy Tag Admin.

Konsol

  1. Buka halaman Policy tag taxonomies di Konsol Google Cloud.

    Buka halaman Policy tag taxonomies

  2. Klik Buat taksonomi.
  3. Di halaman Taksonomi baru:

    1. Untuk Nama taksonomi, masukkan nama taksonomi yang ingin Anda buat.
    2. Untuk Deskripsi, masukkan deskripsi.
    3. Jika diperlukan, ubah project yang tercantum di bagian Project.
    4. Jika perlu, ubah lokasi yang tercantum di bagian Lokasi.
    5. Di bagian Tag Kebijakan, masukkan nama dan deskripsi tag kebijakan.
    6. Untuk menambahkan tag kebijakan turunan untuk tag kebijakan, klik Tambahkan subtag.
    7. Untuk menambahkan tag kebijakan baru di tingkat yang sama dengan tag kebijakan lainnya, klik + Tambahkan tag kebijakan.
    8. Terus tambahkan tag kebijakan dan tag kebijakan turunan sesuai kebutuhan untuk taksonomi Anda.
    9. Setelah selesai membuat tag kebijakan untuk hierarki Anda, klik Buat.

API

Untuk menggunakan taksonomi yang sudah ada, panggil taxonomies.import sebagai pengganti dua langkah pertama dari prosedur berikut.

  1. Panggil taxonomies.create untuk membuat taksonomi.
  2. Panggil taxonomies.policytag.create untuk membuat tag kebijakan.

Menetapkan izin pada tag kebijakan

Pengguna atau akun layanan yang membuat taksonomi harus diberi peran Data Catalog Policy Tag Admin.

Konsol

  1. Buka halaman Policy tag taxonomies di Konsol Google Cloud.

    Buka halaman Policy tag taxonomies

  2. Klik nama taksonomi yang berisi tag kebijakan yang relevan.

  3. Pilih satu atau beberapa tag kebijakan.

  4. Jika Info panel disembunyikan, klik Show info panel.

  5. Di Info panel, Anda dapat melihat peran dan akun utama untuk tag kebijakan yang dipilih. Tambahkan peran Policy Tags Admin ke akun yang membuat dan mengelola tag kebijakan. Tambahkan peran Fine-Grained Reader ke akun yang dimaksudkan untuk memiliki akses ke data yang dilindungi oleh kontrol akses tingkat kolom. Anda juga menggunakan panel ini untuk menghapus peran dari akun atau mengubah izin lainnya.

  6. Klik Save.

API

Panggil taxonomies.policytag.setIamPolicy untuk memberikan akses ke tag kebijakan dengan menetapkan akun utama ke peran yang sesuai.

Menetapkan tag kebijakan di kolom

Pengguna atau akun layanan yang menetapkan tag kebijakan memerlukan izin datacatalog.taxonomies.get dan bigquery.tables.setCategory. datacatalog.taxonomies.get disertakan dalam peran Data Catalog Policy Tags Admin dan Project Viewer. bigquery.tables.setCategory disertakan dalam peran BigQuery Admin (roles/bigquery.admin) dan BigQuery Data Owner (roles/bigquery.dataOwner).

Untuk melihat taksonomi dan tag kebijakan di semua project dalam organisasi di konsol Google Cloud, pengguna memerlukan izin resourcemanager.organizations.get, yang disertakan dalam peran Organization Viewer.

Konsol

Tetapkan tag kebijakan dengan mengubah skema menggunakan konsol Google Cloud.

  1. Buka halaman BigQuery di konsol Google Cloud.

    Buka halaman BigQuery

  2. Di BigQuery Explorer, temukan dan pilih tabel yang ingin Anda perbarui. Skema tabel untuk tabel tersebut akan terbuka.

  3. Klik Edit Skema.

  4. Di layar Skema saat ini, pilih kolom target, lalu klik Tambahkan tag kebijakan.

  5. Di layar Tambahkan tag kebijakan, temukan dan pilih tag kebijakan yang ingin Anda terapkan ke kolom.

  6. Klik Select. Layar Anda akan terlihat seperti berikut:

    Edit skema.

  7. Klik Simpan.

bq

  1. Menulis skema ke file lokal.

    bq show --schema --format=prettyjson \
       project-id:dataset.table > schema.json

    dengan:

    • project-id adalah project ID Anda.
    • dataset adalah nama set data yang berisi tabel yang Anda perbarui.
    • table adalah nama tabel yang Anda perbarui.
  2. Mengubah schema.json untuk menetapkan tag kebijakan pada kolom. Untuk nilai kolom names dari policyTags, gunakan nama resource tag kebijakan.

    [
     ...
     {
       "name": "ssn",
       "type": "STRING",
       "mode": "REQUIRED",
       "policyTags": {
         "names": ["projects/project-id/locations/location/taxonomies/taxonomy-id/policyTags/policytag-id"]
       }
     },
     ...
    ]
  3. Perbarui skema.

    bq update \
       project-id:dataset.table schema.json

API

Untuk tabel yang sudah ada, panggil tables.patch, atau untuk tabel baru, panggil tables.insert. Gunakan properti schema objek Table yang Anda teruskan untuk menetapkan tag kebijakan dalam definisi skema Anda. Lihat skema contoh command line untuk melihat cara menetapkan tag kebijakan.

Saat menangani tabel yang sudah ada, metode tables.patch lebih disarankan, karena metode tables.update menggantikan seluruh resource tabel.

Cara lain untuk menetapkan tag kebijakan di kolom

Anda juga dapat menetapkan tag kebijakan saat:

  • Gunakan bq mk untuk membuat tabel. Teruskan skema yang akan digunakan untuk pembuatan tabel.
  • Gunakan bq load untuk memuat data ke tabel. Teruskan skema untuk digunakan saat Anda memuat tabel.

Untuk informasi skema umum, lihat Menentukan skema.

Menerapkan kontrol akses

Gunakan petunjuk ini untuk mengaktifkan atau menonaktifkan penerapan kontrol akses.

Untuk menerapkan kontrol akses, kebijakan data harus dibuat. Hal ini dilakukan jika Anda menerapkan kontrol akses menggunakan Konsol Google Cloud. Jika ingin menerapkan kontrol akses menggunakan BigQuery Data Policy API, Anda harus membuat kebijakan data secara eksplisit.

Akun pengguna atau akun layanan yang menerapkan kontrol akses harus memiliki peran BigQuery Admin atau peran BigQuery Data Owner. Mereka juga harus memiliki peran Data Catalog Admin atau peran Data Catalog Viewer.

Konsol

Untuk menerapkan kontrol akses, ikuti langkah-langkah berikut:

  1. Buka halaman Policy tag taxonomies di Konsol Google Cloud.

    Buka halaman Policy tag taxonomies

  2. Klik taksonomi yang kontrol akses tingkat kolomnya ingin Anda terapkan.

  3. Jika Enforce access control belum diaktifkan, klik Enforce access control untuk mengaktifkannya.

Untuk menghentikan penerapan kontrol akses jika aktif, klik Enforce access control untuk menonaktifkannya.

Jika memiliki kebijakan data yang terkait dengan salah satu tag kebijakan dalam taksonomi, Anda harus menghapus semua kebijakan data dalam taksonomi sebelum menghentikan penerapan kontrol akses. Jika menghapus kebijakan data menggunakan BigQuery Data Policy API, Anda harus menghapus semua kebijakan data dengan dataPolicyType dari DATA_MASKING_POLICY. Untuk informasi selengkapnya, lihat Menghapus kebijakan data.

API

Untuk menerapkan kontrol akses, panggil create dan teruskan resource DataPolicy di mana kolom dataPolicyType ditetapkan ke COLUMN_LEVEL_SECURITY_POLICY.

Untuk menghentikan penerapan kontrol akses jika aktif, hapus kebijakan data yang terkait dengan taksonomi. Anda dapat melakukannya dengan memanggil metode delete untuk kebijakan data tersebut.

Jika memiliki kebijakan data yang terkait dengan salah satu tag kebijakan dalam taksonomi, Anda tidak dapat menghentikan penerapan kontrol akses tanpa terlebih dahulu menghapus semua kebijakan data dalam taksonomi. Untuk informasi selengkapnya, lihat Menghapus kebijakan data.

Menggunakan tag kebijakan

Gunakan bagian ini untuk mempelajari cara melihat, mengubah, dan menghapus tag kebijakan.

Melihat tag kebijakan

Untuk melihat tag kebijakan yang Anda buat untuk taksonomi:

  1. Buka halaman Policy tag taxonomies di Konsol Google Cloud.

    Buka halaman Policy tag taxonomies

  2. Klik taksonomi yang tag kebijakannya ingin Anda lihat. Halaman Taxonomies menampilkan tag kebijakan dalam taksonomi.

Melihat tag kebijakan dalam skema

Anda dapat melihat tag kebijakan yang diterapkan ke tabel saat memeriksa skema tabel. Anda dapat melihat skema menggunakan Konsol Google Cloud, alat command line bq, BigQuery API, dan library klien. Untuk detail tentang cara melihat skema, lihat Mendapatkan informasi tabel.

Melihat izin pada tag kebijakan

  1. Buka halaman Policy tag taxonomies di Konsol Google Cloud.

    Buka halaman Policy tag taxonomies

  2. Klik nama taksonomi yang berisi tag kebijakan yang relevan.

  3. Pilih satu atau beberapa tag kebijakan.

  4. Jika Info panel disembunyikan, klik Show info panel.

  5. Di Info panel, Anda dapat melihat peran dan akun utama untuk tag kebijakan yang dipilih.

Memperbarui izin pada tag kebijakan

Pengguna atau akun layanan yang membuat taksonomi harus diberi peran Data Catalog Policy Tag Admin.

Konsol

  1. Buka halaman Policy tag taxonomies di Konsol Google Cloud.

    Buka halaman Policy tag taxonomies

  2. Klik nama taksonomi yang berisi tag kebijakan yang relevan.

  3. Pilih satu atau beberapa tag kebijakan.

  4. Jika Info panel disembunyikan, klik Show info panel.

  5. Di Info panel, Anda dapat melihat peran dan akun utama untuk tag kebijakan yang dipilih. Tambahkan peran Policy Tags Admin ke akun yang membuat dan mengelola tag kebijakan. Tambahkan peran Fine-Grained Reader ke akun yang dimaksudkan untuk memiliki akses ke data yang dilindungi oleh kontrol akses tingkat kolom. Anda juga menggunakan panel ini untuk menghapus peran dari akun atau mengubah izin lainnya.

  6. Klik Save.

API

Panggil taxonomies.policytag.setIamPolicy untuk memberikan akses ke tag kebijakan dengan menetapkan akun utama ke peran yang sesuai.

Mengambil nama resource tag kebijakan

Anda memerlukan nama resource tag kebijakan saat menerapkan tag kebijakan ke kolom.

Untuk mengambil nama resource tag kebijakan:

  1. Lihat tag kebijakan untuk taksonomi yang berisi tag kebijakan.

  2. Temukan tag kebijakan yang nama resource-nya ingin Anda salin.

  3. Klik ikon Copy policy tag resource name.

    Salin nama resource.

Menghapus tag kebijakan

Perbarui skema tabel untuk menghapus tag kebijakan dari kolom. Anda dapat menggunakan Konsol Google Cloud, alat command line bq, dan metode BigQuery API untuk menghapus tag kebijakan dari kolom.

Konsol

Di halaman Current schema, di bagian Policy tags, klik X.

Hapus tag kebijakan.

bq

  1. Ambil skema dan simpan ke file lokal.

    bq show --schema --format=prettyjson \
       project-id:dataset.table > schema.json

    dengan:

    • project-id adalah project ID Anda.
    • dataset adalah nama set data yang berisi tabel yang Anda perbarui.
    • table adalah nama tabel yang Anda perbarui.
  2. Mengubah schema.json untuk menghapus tag kebijakan dari kolom.

    [
     ...
     {
       "name": "ssn",
       "type": "STRING",
       "mode": "REQUIRED",
       "policyTags": {
         "names": []
       }
     },
     ...
    ]
  3. Perbarui skema.

    bq update \
       project-id:dataset.table schema.json

API

Panggil tables.patch dan gunakan properti schema untuk menghapus tag kebijakan dalam definisi skema Anda. Lihat skema contoh command line untuk mengetahui cara menghapus tag kebijakan.

Karena metode tables.update menggantikan seluruh resource tabel, metode tables.patch akan dipilih.

Menghapus tag kebijakan

Anda dapat menghapus satu atau beberapa tag kebijakan dalam taksonomi, atau Anda dapat menghapus taksonomi dan semua tag kebijakan yang ada di dalamnya. Menghapus tag kebijakan akan otomatis menghapus pengaitan antara tag kebijakan dan kolom tempat tag tersebut diterapkan.

Jika Anda menghapus tag kebijakan yang memiliki kebijakan data yang terkait, diperlukan waktu hingga 30 menit agar kebijakan data juga dihapus. Anda dapat menghapus kebijakan data secara langsung jika ingin segera dihapus.

Untuk menghapus satu atau beberapa tag kebijakan di taksonomi, ikuti langkah-langkah berikut:

  1. Buka halaman Policy tag taxonomies di Konsol Google Cloud.

    Buka halaman Policy tag taxonomies

  2. Klik nama taksonomi yang berisi tag yang akan dihapus.
  3. Klik Edit.
  4. Klik di samping tag kebijakan yang akan dihapus.
  5. Klik Save.
  6. Klik Confirm.

Untuk menghapus seluruh taksonomi, ikuti langkah-langkah berikut:

  1. Buka halaman Policy tag taxonomies di Konsol Google Cloud.

    Buka halaman Policy tag taxonomies

  2. Klik nama taksonomi yang berisi tag yang akan dihapus.
  3. Klik Delete Policy Tag Taxonomy.
  4. Ketik nama taksonomi, lalu klik Delete.

Membuat kueri data dengan kontrol akses tingkat kolom

Jika pengguna memiliki akses set data dan memiliki peran Data Catalog Fine-Grained Reader, data kolom akan tersedia bagi pengguna. Pengguna menjalankan kueri seperti biasa.

Jika pengguna memiliki akses set data tetapi tidak memiliki peran Data Catalog Fine-Grained Reader, data kolom tidak akan tersedia bagi pengguna. Jika pengguna tersebut menjalankan SELECT *, mereka akan menerima error yang mencantumkan kolom yang tidak dapat diakses oleh pengguna. Untuk mengatasi error, Anda dapat melakukan:

  • Ubah kueri untuk mengecualikan kolom yang tidak dapat diakses pengguna. Misalnya, jika pengguna tidak memiliki akses ke kolom ssn, tetapi memiliki akses ke kolom yang tersisa, pengguna dapat menjalankan kueri berikut:

    SELECT * EXCEPT (ssn) FROM ...

    Pada contoh sebelumnya, klausa EXCEPT mengecualikan kolom ssn.

  • Minta Administrator Data Catalog untuk menambahkan pengguna sebagai Data Catalog Fine-Grained Reader ke class data yang relevan. Pesan error memberikan nama lengkap tag kebijakan yang akan diakses oleh pengguna.

FAQ

Apakah keamanan tingkat kolom BigQuery berfungsi untuk tabel virtual?

Ya. Tabel virtual berasal dari tabel pokok. Kontrol akses tingkat kolom yang sama pada tabel akan berlaku jika kolom yang dilindungi diakses melalui tabel virtual.

Ada dua jenis tabel virtual di BigQuery, tabel virtual logis dan tabel virtual yang diotorisasi. Kedua jenis tabel virtual berasal dari tabel sumber, dan keduanya konsisten dengan kontrol akses tingkat kolom tabel.

Apakah kontrol akses tingkat kolom berfungsi pada kolom STRUCT atau RECORD?

Ya. Anda hanya dapat menerapkan tag kebijakan ke kolom leaf, dan hanya kolom tersebut yang dilindungi.

Dapatkah saya menggunakan legacy SQL dan GoogleSQL?

Anda dapat menggunakan GoogleSQL untuk membuat kueri tabel yang dilindungi oleh kontrol akses tingkat kolom.

Kueri SQL lama akan ditolak jika ada tag kebijakan pada tabel target.

Apakah kueri dicatat di Cloud Logging?

Pemeriksaan tag kebijakan dicatat di Logging. Untuk informasi selengkapnya, lihat Logging audit untuk kontrol akses tingkat kolom.

Apakah penyalinan tabel dipengaruhi oleh kontrol akses tingkat kolom?

Ya. Anda tidak dapat menyalin kolom jika tidak memiliki akses ke kolom tersebut.

Operasi berikut memverifikasi izin tingkat kolom.

Saat saya menyalin data ke tabel baru, apakah tag kebijakan akan diterapkan secara otomatis?

Pada umumnya, tidak. Jika Anda menyalin hasil kueri ke tabel baru, tabel baru tidak otomatis memiliki tag kebijakan yang ditetapkan. Jadi tabel baru tersebut tidak memiliki kontrol akses tingkat kolom. Hal yang sama berlaku jika Anda mengekspor data ke Cloud Storage.

Pengecualiannya adalah jika Anda menggunakan tugas penyalinan tabel. Karena tugas penyalinan tabel tidak menerapkan transformasi data apa pun, tag kebijakan secara otomatis disebarkan ke tabel target. Pengecualian ini tidak berlaku untuk tugas penyalinan tabel lintas region, karena tugas penyalinan tabel lintas region tidak mendukung penyalinan tag kebijakan.

Apakah kontrol akses tingkat kolom kompatibel dengan Virtual Private Cloud?

Ya, kontrol akses tingkat kolom dan VPC kompatibel dan saling melengkapi.

VPC memanfaatkan IAM untuk mengontrol akses ke berbagai layanan, seperti BigQuery dan Cloud Storage. Kontrol akses tingkat kolom memberikan keamanan terperinci pada setiap kolom dalam BigQuery itu sendiri.

Guna menerapkan VPC untuk tag kebijakan dan kebijakan data untuk kontrol akses tingkat kolom dan data masking dinamis, Anda harus membatasi API berikut di perimeter:

Memecahkan masalah

Saya tidak dapat melihat peran Data Catalog

Jika tidak dapat melihat peran seperti Data Catalog Fine-Grained Reader, mungkin Anda belum mengaktifkan Data Catalog API dalam project Anda. Untuk mempelajari cara mengaktifkan Data Catalog API, lihat Sebelum memulai. Peran Data Catalog akan muncul beberapa menit setelah Anda mengaktifkan Data Catalog API.

Saya tidak dapat melihat halaman Taxonomies

Anda memerlukan izin tambahan untuk melihat halaman Taxonomies. Misalnya, peran Data Catalog Policy Tags Admin memiliki akses ke halaman Taxonomies.

Saya menerapkan tag kebijakan, tetapi sepertinya tidak berfungsi

Jika Anda masih menerima hasil kueri untuk akun yang seharusnya tidak memiliki akses, akun tersebut mungkin menerima hasil yang di-cache. Khususnya, jika sebelumnya berhasil menjalankan kueri, lalu menerapkan tag kebijakan, Anda bisa mendapatkan hasil dari cache hasil kueri. Secara default, hasil kueri disimpan ke cache selama 24 jam. Kueri akan langsung gagal jika Anda menonaktifkan cache hasil. Untuk detail selengkapnya tentang caching, lihat Dampak kontrol akses tingkat kolom.

Secara umum, update IAM memerlukan waktu sekitar 30 detik untuk diterapkan. Perubahan pada hierarki tag kebijakan dapat memerlukan waktu hingga 30 menit untuk diterapkan.

Saya tidak memiliki izin untuk membaca dari tabel dengan keamanan tingkat kolom

Anda memerlukan peran Fine-Grained Reader atau peran Masked Reader di berbagai tingkat, seperti organisasi, folder, project, dan tag kebijakan. Peran Fine-Grained Reader memberikan akses data mentah, sedangkan peran Masked Reader memberikan akses ke data yang disamarkan. Anda dapat menggunakan Pemecahan Masalah IAM untuk memeriksa izin ini di tingkat project.

Saya menetapkan kontrol akses terperinci dalam taksonomi tag kebijakan, tetapi pengguna melihat data yang dilindungi

Untuk memecahkan masalah ini, konfirmasi detail berikut:

  • Di halaman Taksonomi tag kebijakan, confirmasikan bahwa tombol Terapkan kontrol akses berada di posisi Aktif.
  • Pastikan kueri Anda tidak menggunakan hasil kueri yang di-cache. Jika menggunakan alat antarmuka command line bq untuk menguji kueri, Anda harus menggunakan --nouse_cache flag untuk menonaktifkan cache kueri. Contoh:

    bq query --nouse_cache --use_legacy_sql=false "SELECT * EXCEPT (customer_pii) FROM my_table;"