Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Melarikan diri dari pengidentifikasi dalam prosedur DDL kebijakan masking
Saat membuat kebijakan penyembunyian data dengan pengidentifikasi yang dikutip, pelolosan yang tepat diperlukan untuk memastikan referensi objek dan aplikasi kebijakan yang benar. Untuk menggunakan pengenal yang dikutip dalam prosedur manajemen kebijakan pg_columnmask masking:
Nama kebijakan — Harus dilampirkan dalam tanda kutip ganda.
Nama tabel - Baik nama skema dan nama tabel harus dilampirkan dalam tanda kutip ganda satu per satu bila diperlukan.
Ekspresi masking - Nama kolom dan fungsi dalam ekspresi masking harus diapit tanda kutip ganda dan tanda kutip itu sendiri harus diloloskan menggunakan garis miring terbalik.
Peran - Array nama peran dikutip secara otomatis. Nama peran harus sama persis dengan nama seperti yang terlihat di
pg_rolestermasuk sensitivitas kasus.
contoh dari melarikan diri dan mengutip sintaks
Contoh ini menunjukkan sintaks escaping dan kutipan yang tepat saat membuat kebijakan masking untuk tabel, kolom, fungsi, dan peran yang menggunakan nama kasus campuran atau memerlukan pengidentifikasi yang dikutip di Aurora PostgreSQL.
-- Create a table and columns with mixed case name CREATE TABLE public."Employees" ( "Name" TEXT, "Email" TEXT, ssn VARCHAR(20) ); -- Create a role with mixed case name CREATE ROLE "Masked_user"; -- Create a function with mixed case name CREATE OR REPLACE FUNCTION public."MaskEmail"(text) RETURNS character varying LANGUAGE plpgsql IMMUTABLE PARALLEL SAFE AS $$ BEGIN RETURN 'XXXXXXXX'::text; END $$; -- Now use these objects with mixed case names in -- masking policy management procedures CALL pgcolumnmask.create_masking_policy( '"Policy1"', -- policy name should be surrounded with double quotes for quoting 'public."Employees"', -- table and schema name should be individually -- surrounded with double quotes for quoting JSON_OBJECT('{ "\"Email\"", "\"MaskEmail\"(\"Email\")" }')::JSONB, -- masking expression should have double quotes around function names -- and columns names etc when needed. Also the double quotes itself -- should be escaped using \ (backslash) since this is a JSON string ARRAY['Masked_user'], -- Rolename do not need quoting -- (this behaviour may change in future release) 100 ); SELECT * FROM pgcolumnmask.pg_columnmask_policies WHERE tablename = 'Employees'; -[ RECORD 1 ]-----+------------------------------------- schemaname | public tablename | Employees policyname | Policy1 roles | {Masked_user} masked_columns | {Email} masking_functions | {"(\"MaskEmail\"(\"Email\"))::text"} weight | 100
Pandangan administratif
Anda dapat meninjau semua pg_columnmask kebijakan menggunakan tampilan pgcolumnmask.pg_columnmask_policies administratif yang dapat diakses publik. Informasi berikut tersedia menggunakan tampilan ini. Tampilan hanya menampilkan kebijakan masking yang dimiliki oleh pengguna saat ini.
| Nama kolom | Jenis data | Deskripsi |
|---|---|---|
|
nama skema |
NAME |
Skema hubungan dengan mana kebijakan dilampirkan |
|
tablename |
NAME |
Nama hubungan yang dilampirkan kebijakan |
|
nama kebijakan |
NAME |
Nama kebijakan masking, semua kebijakan masking memiliki nama unik |
|
peran |
TEKS [] |
Peran kebijakan yang berlaku. |
|
bertopeng_kolom |
TEKS [] |
Kolom bertopeng |
|
masking_functions |
TEKS [] |
Fungsi masking |
| berat | INT |
Bobot kebijakan terlampir |