Verfahren zur Verwaltung von Datenmaskierungsrichtlinien - Amazon Aurora

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Verfahren zur Verwaltung von Datenmaskierungsrichtlinien

Sie können Maskierungsrichtlinien mithilfe der von der Erweiterung bereitgestellten Verfahren verwalten. pg_columnmask Um Maskierungsrichtlinien zu erstellen, zu ändern oder zu löschen, benötigen Sie eines der folgenden Rechte:

  • Besitzer der Tabelle, für die Sie die pg_columnmask Richtlinie erstellen.

  • Mitglied vonrds_superuser.

  • Mitglied der durch den pgcolumnmask.policy_admin_rolname Parameter festgelegten Rolle des pg_columnmask Policy-Managers.

Mit dem folgenden Befehl wird eine Tabelle erstellt, die in nachfolgenden Abschnitten verwendet wird:

CREATE TABLE public.customers ( id SERIAL PRIMARY KEY, name TEXT, phone TEXT, address TEXT, email TEXT );

CREATE_MASKING_POLICY

Das folgende Verfahren erstellt eine neue Maskierungsrichtlinie für eine Benutzertabelle:

Syntax

create_masking_policy( policy_name, table_name, masking_expressions, roles, weight)

Argumente

Parameter Datatype Description
policy_name NAME

Der Name der Maskierungsrichtlinie. Muss pro Tabelle eindeutig sein.

table_name REGCLASS

Der qualified/unqualified Name oder die OID der Tabelle, auf die die Maskierungsrichtlinie angewendet werden soll.

masking_expressions JSONB

JSON-Objekt, das Paare aus Spaltennamen und Maskierungsfunktionen enthält. Jeder Schlüssel ist ein Spaltenname und sein Wert ist der Maskierungsausdruck, der auf diese Spalte angewendet werden soll.

roles NAME []

Die Rollen, für die diese Maskierungsrichtlinie gilt. Die Standardeinstellung ist PUBLIC.

weight INT

Gewicht der Maskierungsrichtlinie. Wenn für die Anfrage eines bestimmten Benutzers mehrere Richtlinien gelten, wird die Richtlinie mit der höchsten Gewichtung (höhere Ganzzahl) auf jede maskierte Spalte angewendet.

Standard = 0. Keine zwei Maskierungsrichtlinien in der Tabelle können dieselbe Gewichtung haben.

Rückgabetyp

Keine

Beispiel beim Erstellen einer Maskierungsrichtlinie, die die E-Mail-Spalte für die Rolle maskiert: test_user
CALL pgcolumnmask.create_masking_policy( 'customer_mask', 'public.customers', JSON_OBJECT('{ "email", "pgcolumnmask.mask_email(email)" }')::JSONB, ARRAY['test_user'], 100 );

ALTER_MASKING_POLICY

Dieses Verfahren ändert eine bestehende Maskierungsrichtlinie. ALTER_MASKING_POLICYkann die Maskierungsausdrücke der Richtlinie, die Gruppe der Rollen, für die die Richtlinie gilt, und die Gewichtung der Maskierungsrichtlinie ändern. Wenn einer dieser Parameter weggelassen wird, bleibt der entsprechende Teil der Richtlinie unverändert.

Syntax

alter_masking_policy( policy_name, table_name, masking_expressions, roles, weight)

Argumente

Parameter Datatype Description
policy_name NAME

Bestehender Name der Maskierungsrichtlinie.

table_name REGCLASS

Die qualified/unqualified Name-OID der Tabelle, die die Maskierungsrichtlinie enthält.

masking_expressions JSONB

Neues JSON-Objekt mit Spaltennamen und Maskierungsfunktionspaaren oder andernfalls NULL.

roles NAME []

Die Liste der neuen Rollen, für die diese Maskierungsrichtlinie gilt, andernfalls NULL.

weight INT

Neue Gewichtung für die Maskierungsrichtlinie oder andernfalls NULL.

Rückgabetyp

Keine

Beispiel zum Hinzufügen der Analystenrolle zu einer vorhandenen Maskierungsrichtlinie, ohne andere Richtlinienattribute zu ändern.
CALL pgcolumnmask.alter_masking_policy( 'customer_mask', 'public.customers', NULL, ARRAY['test_user', 'analyst'], NULL ); -- Alter the weight of the policy without altering other details CALL pgcolumnmask.alter_masking_policy( 'customer_mask', 'customers', NULL, NULL, 4 );

DROP_MASKING_POLICY

Durch dieses Verfahren wird eine bestehende Maskierungsrichtlinie entfernt.

Syntax

drop_masking_policy( policy_name, table_name)

Argumente

Parameter Datatype Description
policy_name NAME

Bestehender Name der Maskierungsrichtlinie.

table_name REGCLASS

Die qualified/unqualified Name-OID der Tabelle, die die Maskierungsrichtlinie enthält.

Rückgabetyp

Keine

Beispiel beim Löschen der Maskierungsrichtlinie customer_mask
-- Drop a masking policy CALL pgcolumnmask.drop_masking_policy( 'customer_mask', 'public.customers', );