Batasan penyaringan data - AWS Lake Formation

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Batasan penyaringan data

Saat Anda memberikan izin Lake Formation pada tabel Katalog Data, Anda dapat menyertakan spesifikasi pemfilteran data untuk membatasi akses ke data tertentu dalam hasil kueri dan mesin yang terintegrasi dengan Lake Formation. Lake Formation menggunakan pemfilteran data untuk mencapai keamanan tingkat kolom, keamanan tingkat baris, dan keamanan tingkat sel. Anda dapat menentukan dan menerapkan filter data pada kolom bersarang jika data sumber Anda berisi struktur bersarang.

Catatan dan batasan untuk penyaringan tingkat kolom

Ada tiga cara untuk menentukan pemfilteran kolom:

  • Dengan menggunakan filter data

  • Dengan menggunakan penyaringan kolom sederhana atau penyaringan kolom bersarang.

  • Dengan menggunakan TAGs.

Pemfilteran kolom sederhana hanya menentukan daftar kolom untuk menyertakan atau mengecualikan. Baik konsol Lake Formation, API, dan AWS CLI mendukung pemfilteran kolom sederhana. Sebagai contoh, lihat Grant with Simple Column Filtering.

Catatan dan batasan berikut berlaku untuk pemfilteran kolom:

  • AWS Glue 5.0 atau lebih tinggi mendukung kontrol akses berbutir halus melalui Lake Formation hanya untuk tabel Apache Hive dan Apache Iceberg.

  • Untuk memberikan SELECT opsi hibah dan pemfilteran kolom, Anda harus menggunakan daftar sertakan, bukan daftar pengecualian. Tanpa opsi hibah, Anda dapat menggunakan daftar sertakan atau kecualikan.

  • Untuk memberikan SELECT pada tabel dengan pemfilteran kolom, Anda harus diberikan SELECT di atas meja dengan opsi hibah dan tanpa batasan baris. Anda harus memiliki akses ke semua baris.

  • Jika Anda memberikan opsi SELECT hibah dan pemfilteran kolom ke prinsipal di akun Anda, prinsipal tersebut harus menentukan pemfilteran kolom untuk kolom yang sama atau subset dari kolom yang diberikan saat memberikan kepada prinsipal lain. Jika Anda memberikan SELECT opsi hibah dan pemfilteran kolom ke akun eksternal, administrator data lake di akun eksternal dapat memberikan SELECT semua kolom ke prinsipal lain di akun mereka. Namun, bahkan dengan SELECT pada semua kolom, prinsipal itu hanya akan memiliki visibilitas pada kolom yang diberikan ke akun eksternal.

  • Anda tidak dapat menerapkan pemfilteran kolom pada tombol partisi.

  • Prinsipal dengan SELECT izin pada subset kolom dalam tabel tidak dapat diberikanALTER,, DROPDELETE, atau INSERT izin pada tabel itu. Untuk kepala sekolah denganALTER,, DROPDELETE, atau INSERT izin di atas meja, jika Anda memberikan SELECT izin dengan pemfilteran kolom, itu tidak berpengaruh.

Catatan dan batasan berikut berlaku untuk pemfilteran kolom bersarang:

  • Anda dapat menyertakan atau mengecualikan lima tingkat bidang bersarang dalam filter data.

    Col1.Col1_1.Col1_1_1.Col1_1_1_1_1.col1_1_1_1

  • Anda tidak dapat menerapkan pemfilteran kolom pada bidang bersarang dalam kolom partisi.

  • Jika skema tabel Anda berisi nama kolom tingkat atas (“pelanggan”.” address”) yang memiliki pola representasi bidang bersarang yang sama dalam filter data (kolom bersarang dengan nama kolom tingkat atas customer dan nama bidang bersarang address ditentukan seperti "customer"."address" dalam filter data), Anda tidak dapat secara eksplisit menentukan akses ke kolom tingkat atas atau bidang bersarang karena keduanya direpresentasikan menggunakan pola yang sama dalam daftar inklusi/pengecualian. Ini ambigu, dan Lake Formation tidak dapat diselesaikan jika Anda menentukan kolom tingkat atas atau bidang bersarang.

  • Jika kolom tingkat atas atau bidang bersarang berisi tanda kutip ganda dalam nama, Anda harus menyertakan kutipan ganda kedua saat Anda menentukan akses ke bidang bersarang dalam daftar sertakan dan kecualikan filter sel data.

    Contoh nama kolom bersarang dengan tanda kutip ganda - a.b.double"quote

    Contoh representasi kolom bersarang dalam filter data - "a"."b"."double""quote"

Batasan penyaringan tingkat sel

Ingatlah catatan dan batasan berikut untuk pemfilteran tingkat baris dan tingkat sel.

  • Keamanan tingkat sel tidak didukung pada kolom bersarang, tampilan, dan tautan sumber daya.

  • Semua ekspresi yang didukung pada kolom tingkat atas juga didukung pada kolom bersarang. Namun, bidang bersarang di bawah kolom partisi TIDAK boleh direferensikan saat mendefinisikan ekspresi tingkat baris bersarang.

  • Keamanan tingkat sel tersedia di semua wilayah saat menggunakan mesin Athena versi 3 atau Amazon Redshift Spectrum. Untuk layanan lain, keamanan tingkat sel hanya tersedia di wilayah yang disebutkan di. Wilayah yang Didukung

  • Pernyataan SELECT INTO tidak didukung.

  • Tipearray, dan map data tidak didukung dalam ekspresi filter baris. Tipe struct data didukung.

  • Tidak ada batasan untuk jumlah filter data yang dapat didefinisikan pada tabel, tetapi ada batas 100 SELECT izin filter data untuk satu prinsipal pada tabel.

  • Jumlah maksimum filter data yang dapat dimasukkan dalam hibah pada tabel adalah 100.

  • Untuk menerapkan filter data dengan ekspresi filter baris, Anda harus memiliki SELECT opsi hibah pada semua kolom tabel. Pembatasan ini tidak berlaku untuk administrator di akun eksternal saat hibah dibuat ke akun eksternal.

  • Jika kepala sekolah adalah anggota grup dan prinsipal dan grup diberikan izin pada subset baris, izin baris efektif prinsipal adalah gabungan izin prinsipal dan izin grup.

  • Nama kolom berikut dibatasi dalam tabel untuk pemfilteran tingkat baris dan tingkat sel:

    • ctid

    • oid

    • xmin

    • cmin

    • xmax

    • cmax

    • tableoid

    • insertxid

    • deletexid

    • importoid

    • redcatuniqueid

  • Jika Anda menerapkan ekspresi filter semua baris pada tabel bersamaan dengan ekspresi filter lain dengan predikat, ekspresi semua baris akan menang atas semua ekspresi filter lainnya.

  • Ketika izin pada subset baris diberikan ke AWS akun eksternal dan administrator data lake dari akun eksternal memberikan izin tersebut kepada prinsipal di akun tersebut, predikat filter efektif prinsipal adalah persimpangan predikat akun dan predikat apa pun yang langsung diberikan kepada prinsipal.

    Misalnya, jika akun memiliki izin baris dengan predikat dept='hr' dan prinsipal diberikan izin secara terpisah untukcountry='us', prinsipal hanya memiliki akses ke baris dengan dept='hr' dan. country='us'

Untuk informasi selengkapnya tentang penyaringan tingkat sel, lihat. Pemfilteran data dan keamanan tingkat sel di Lake Formation

Untuk pertimbangan dan batasan saat menanyakan tabel menggunakan Amazon Redshift Spectrum dengan kebijakan keamanan tingkat baris, lihat Pertimbangan dan batasan menggunakan kebijakan RLS di Panduan Pengembang Database Amazon Redshift.