適用対象:
Databricks SQL
Databricks Runtime
Unity Catalog のみ
Important
この機能は パブリック プレビュー段階です。
INFORMATION_SCHEMA.ABAC_POLICY_DEFINITIONS は、ローカル カタログ内のセキュリティ保護可能なオブジェクトにアタッチされている ABAC ポリシーごとに 1 行を返します。 各行には、添付ファイルのスコープ、ポリシーの種類、含まれるプリンシパルと除外プリンシパル、ポリシーの適用に使用される条件など、ポリシー定義が記述されています。
保険が返 READ METADATA されるのは、契約が付属している担保資産にまたは MANAGE 契約を所有している場合のみです。 これは DESCRIBE POLICY のアクセス パターンと一致します。
この関係は、SQL 標準情報スキーマの拡張機能です。
定義
ABAC_POLICY_DEFINITIONS リレーションには次の列が含まれています。
| Name | データの種類 | ヌラブル | Description |
|---|---|---|---|
POLICY_ID |
STRING |
いいえ | ポリシーの一意識別子。 |
POLICY_NAME |
STRING |
いいえ | ポリシーの名前。 |
POLICY_TYPE |
STRING |
いいえ | ポリシーの種類。 たとえば、 ROW_FILTER、 COLUMN_MASK、 GRANT (ベータ) などです。 |
CATALOG_NAME |
STRING |
はい | ポリシーがアタッチされているカタログの名前、またはポリシーがアタッチされているスキーマまたはテーブルを含むカタログの名前。 |
SCHEMA_NAME |
STRING |
はい | ポリシーがアタッチされているスキーマの名前、またはポリシーがアタッチされているテーブルを含むスキーマの名前。
NULL カタログ添付ポリシーの場合は 〗。 |
SECURABLE_NAME |
STRING |
はい | ポリシーがアタッチされているセキュリティ保護可能なオブジェクトの名前。
NULL カタログ接続ポリシーとスキーマ接続ポリシーの場合。 |
ON_SECURABLE_TYPE |
STRING |
いいえ | ポリシーがアタッチされているセキュリティ保護可能なオブジェクトの種類。 たとえば、CATALOG、SCHEMA、TABLE、または MODEL です。 |
TO_PRINCIPALS |
ARRAY<STRING> |
いいえ | ポリシーが適用されるプリンシパル (ユーザー、グループ、またはサービス プリンシパル)。 空の配列は、何も設定されていない場合に [] 。 |
EXCEPT_PRINCIPALS |
ARRAY<STRING> |
いいえ | ポリシー アプリケーションから除外されるプリンシパル。 空の配列は、何も除外されない場合に [] 。 |
FOR_SECURABLE_TYPE |
STRING |
いいえ | 評価時にポリシーが対象とするセキュリティ保護可能なオブジェクトの種類。 たとえば、「 TABLE 」のように入力します。 |
PRIVILEGES |
ARRAY<STRING> |
はい | ポリシーによって付与される特権。
NULL
ROW_FILTERおよびCOLUMN_MASK ポリシーの場合。 |
WHEN_CONDITION |
STRING |
はい | ポリシーが適用される条件式。 たとえば、管理タグに基づいてテーブルに一致するブール式です。 |
MATCH_COLUMNS |
ARRAY<STRING> |
はい | ポリシーによって参照される列。
NULL
GRANT ポリシーの場合は 。 |
CREATED_BY |
STRING |
いいえ | ポリシーを作成したプリンシパル。 |
Examples
-- List every GRANT policy in the current catalog.
> SELECT *
FROM information_schema.abac_policy_definitions
WHERE policy_type = 'GRANT';
-- 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';