ABAC_POLICY_DEFINITIONS

Gilt für:Häkchen Databricks SQL durch Häkchen mit „Ja“ markiert Databricks Runtime Häkchen Nur Unity Catalog

Important

Dieses Feature befindet sich in der Public Preview.

INFORMATION_SCHEMA.ABAC_POLICY_DEFINITIONS gibt für jede ABAC-Politik , die an ein sicherbares Objekt angehängt ist, eine Zeile zurück. Jede Zeile beschreibt die Richtliniendefinition, einschließlich anlagenbezogener Bereiche, Richtlinientyp, eingeschlossene und ausgenommene Prinzipale und die Bedingung, die zum Erzwingen der Richtlinie verwendet wird.

Um Metastore-Level-Richtlinien (Beta) zusammen mit allen ABAC-Richtlinien im Metastore aufzulisten, fragen SYSTEM.INFORMATION_SCHEMA.ABAC_POLICY_DEFINITIONSSie .

Sie werden Policen nur zurückbekommen, wenn Sie die Versicherung haben READ METADATA oder MANAGE auf dem sicheren Vertrag sind, an dem die Police angehängt ist, oder sie besitzen. Dies entspricht dem Zugriffsmuster von DESCRIBE POLICY.

Diese Beziehung ist eine Erweiterung des SQL-Standardinformationsschemas.

Definition

Die ABAC_POLICY_DEFINITIONS-Beziehung enthält die folgenden Spalten:

Name Datentyp Nullfähig Description
POLICY_ID STRING No Eindeutiger Bezeichner der Richtlinie.
POLICY_NAME STRING No Name der Richtlinie.
POLICY_TYPE STRING No Den Richtlinientyp. Zum Beispiel ROW_FILTER, COLUMN_MASK, GRANT oder DENY.
CATALOG_NAME STRING Yes Der Name des Katalogs, dem die Richtlinie zugeordnet ist, oder der das Schema oder die Tabelle enthält, an den die Richtlinie angefügt ist. NULL für metastore-angehängte Richtlinien (Beta).
SCHEMA_NAME STRING Yes Der Name des Schemas, dem die Richtlinie angefügt ist oder die die Tabelle enthält, an die die Richtlinie angefügt ist. NULL für Metastore-angehängte und kataloggebundene Richtlinien.
SECURABLE_NAME STRING Yes Der Name des sicherungsfähigen Objekts, dem die Richtlinie angefügt ist. NULL für Metastore-Attached, Catalog-Attached und Schema-Attached Policies.
ON_SECURABLE_TYPE STRING No Typ des sicheren Objekts, an das die Policy angehängt ist: METASTORE (Beta), CATALOG, , SCHEMAoder TABLE.
TO_PRINCIPALS ARRAY<STRING> No Prinzipale (Benutzer, Gruppen oder Dienstprinzipale) gelten für die Richtlinie. Leeres Array [] , wenn keine festgelegt wird.
EXCEPT_PRINCIPALS ARRAY<STRING> No Von der Richtlinienanwendung ausgeschlossene Prinzipale. Leeres Array [] , wenn keine ausgeschlossen werden.
FOR_SECURABLE_TYPE STRING No Typ des sicherungsfähigen Objekts, auf das die Richtlinienziele bei der Auswertung ausgerichtet sind. Zum Beispiel TABLE für Zeilenfilter und Spaltenmasken, oder MODEL, MODEL_SERVICE, , MODEL_PROVIDER_SERVICE, MCP_SERVICE, oder AGENT_SERVICE für GRANT Richtlinien. Für DENY Policen gilt der besicherbare Typ, auf dem das Privileg verweigert wird, wie z. CATALOGB. , SCHEMA, oder TABLE.
PRIVILEGES ARRAY<STRING> Yes Privilegien, die durch die Police gewährt oder verweigert werden. NULL für ROW_FILTER und COLUMN_MASK Richtlinien.
WHEN_CONDITION STRING Yes Bedingter Ausdruck, unter dem die Richtlinie angewendet wird. Beispiel: ein boolescher Ausdruck, der Tabellen basierend auf den zugehörigen Tags entspricht.
MATCH_COLUMNS ARRAY<STRING> Yes Spalten, auf die von der Richtlinie verwiesen wird. NULL für GRANT und DENY Richtlinien.
CREATED_BY STRING No Prinzipal , der die Richtlinie erstellt hat.

Beispiele

-- List every GRANT policy in the current catalog.
> SELECT *
    FROM information_schema.abac_policy_definitions
    WHERE policy_type = 'GRANT';

-- List every DENY policy in the current catalog.
> SELECT *
    FROM information_schema.abac_policy_definitions
    WHERE policy_type = 'DENY';

-- Find all row filters and column masks attached to securable objects in a schema.
> SELECT policy_name, policy_type, on_securable_type, securable_name, when_condition, match_columns
    FROM information_schema.abac_policy_definitions
    WHERE policy_type IN ('ROW_FILTER', 'COLUMN_MASK')
      AND catalog_name = 'my_catalog'
      AND schema_name = 'my_schema';