Systemansichten zur dynamischen Datenmaskierung - Amazon Redshift

Amazon Redshift wird UDFs ab dem 1. November 2025 die Erstellung von neuem Python nicht mehr unterstützen. Wenn Sie Python verwenden möchten UDFs, erstellen Sie das UDFs vor diesem Datum liegende. Bestehendes Python UDFs wird weiterhin wie gewohnt funktionieren. Weitere Informationen finden Sie im Blogbeitrag.

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.

Systemansichten zur dynamischen Datenmaskierung

Superuser, Benutzer mit der sys:operator Rolle und Benutzer mit der ACCESS SYSTEM TABLE-Berechtigung können auf die folgenden DDM-bezogenen Systemansichten zugreifen.

  • SVV_MASKING_POLICY

    Verwenden Sie SVV_MASKING_POLICY, um alle Maskierungsrichtlinien anzuzeigen, die auf dem Cluster oder der Arbeitsgruppe erstellt wurden.

  • SVV_ATTACHED_MASKING_POLICY

    Verwenden Sie SVV_ATTACHED_MASKING_POLICY, um alle Beziehungen und Benutzer oder Rollen mit angehängten Richtlinien an die aktuell verbundene Datenbank anzuzeigen.

  • SYS_APPLIED_MASKING_POLICY_LOG

    Verwenden Sie SYS_APPLIED_MASKING_POLICY_LOG, um die Anwendung von Maskierungsrichtlinien auf Abfragen nachzuverfolgen, die auf DDM-geschützte Beziehungen verweisen.

Im Folgenden finden Sie einige Beispiele für Informationen, die Sie mithilfe von Systemansichten finden können.

--Select all policies associated with specific users, as opposed to roles SELECT policy_name, schema_name, table_name, grantee FROM svv_attached_masking_policy WHERE grantee_type = 'user'; --Select all policies attached to a specific user SELECT policy_name, schema_name, table_name, grantee FROM svv_attached_masking_policy WHERE grantee = 'target_grantee_name' --Select all policies attached to a given table SELECT policy_name, schema_name, table_name, grantee FROM svv_attached_masking_policy WHERE table_name = 'target_table_name' AND schema_name = 'target_schema_name'; --Select the highest priority policy attachment for a given role SELECT samp.policy_name, samp.priority, samp.grantee, smp.policy_expression FROM svv_masking_policy AS smp JOIN svv_attached_masking_policy AS samp ON samp.policy_name = smp.policy_name WHERE samp.grantee_type = 'role' AND samp.policy_name = mask_get_policy_for_role_on_column( 'target_schema_name', 'target_table_name', 'target_column_name', 'target_role_name') ORDER BY samp.priority desc LIMIT 1; --See which policy a specific user will see on a specific column in a given relation SELECT samp.policy_name, samp.priority, samp.grantee, smp.policy_expression FROM svv_masking_policy AS smp JOIN svv_attached_masking_policy AS samp ON samp.policy_name = smp.policy_name WHERE samp.grantee_type = 'role' AND samp.policy_name = mask_get_policy_for_user_on_column( 'target_schema_name', 'target_table_name', 'target_column_name', 'target_user_name') ORDER BY samp.priority desc; --Select all policies attached to a given relation. SELECT policy_name, schema_name, relation_name, database_name FROM sys_applied_masking_policy_log WHERE relation_name = 'relation_name' AND schema_name = 'schema_name';