SHOW ROW ACCESS POLICIES¶
アクセス権限がある行アクセスポリシーをリストします。作成日、データベースとスキーマの名前、所有者、利用可能なコメントなどの情報を返します。
- こちらもご参照ください。
構文¶
SHOW ROW ACCESS POLICIES [ LIKE '<pattern>' ]
[ LIMIT <rows> [ FROM '<name_string>' ] ]
[ IN
{
ACCOUNT |
DATABASE |
DATABASE <database_name> |
SCHEMA |
SCHEMA <schema_name> |
<schema_name>
APPLICATION <application_name> |
APPLICATION PACKAGE <application_package_name> |
}
]
パラメーター¶
LIKE 'pattern'
オプションで、オブジェクト名でコマンド出力をフィルタリングします。フィルターは、 SQL ワイルドカード文字(
%
および_
)をサポートする、 大文字と小文字を区別しない パターンマッチングを使用します。たとえば、次のパターンは 同じ 結果を返します。
... LIKE '%testing%' ...
... LIKE '%TESTING%' ...
. デフォルト: 値なし(フィルタリングは出力に非適用)。
LIMIT rows [ FROM 'name_string' ]
オプションで、返される行の最大数を制限すると同時に、結果の「ページネーション」を有効にします。実際に返される行数は、指定された制限より少ない場合があります。例えば、既存のオブジェクトの数が指定された制限より少ないなどです。
オプションの
FROM 'name_string'
サブ句は、結果の「カーソル」として効果的に機能します。これにより、指定された文字列と一致するオブジェクト名を持つ最初の行に続く指定された行数を取得できます。文字列は一重引用符で囲む必要があり、 大文字と小文字を区別します。
文字列に完全なオブジェクト名を含める必要はありません。部分的な名前がサポートされています。
デフォルト:値なし(出力に制限は適用されない)
注釈
FROM 'name_string'
句とSTARTS WITH 'name_string'
句の両方をサポートする SHOW コマンドの場合、同じステートメントでこれらの両方の句を組み合わせることができます。ただし、両方の条件を満たしている必要があります。そうでない場合、互いにキャンセルされ、結果が返されません。さらに、オブジェクトは名前の辞書式順序で返されるため、
FROM 'name_string'
は、STARTS WITH 'name_string'
によって返される行よりも辞書式の値が大きい行のみを返します。例:
... STARTS WITH 'A' LIMIT ... FROM 'B'
は結果を返しません。... STARTS WITH 'B' LIMIT ... FROM 'A'
は結果を返しません。... STARTS WITH 'A' LIMIT ... FROM 'AB'
は結果を返します(入力文字列に一致する行がある場合)。
[ IN ... ]
オプションで、コマンドのスコープを指定します。次のいずれかを指定します。
ACCOUNT
アカウント全体の記録を返します。
DATABASE
、 .DATABASE db_name
現在使用中のデータベースまたは指定されたデータベース(
db_name
)の記録を返します。db_name
なしでDATABASE
を指定し、かつデータベースが使用されていない場合、キーワードは出力に影響しません。SCHEMA
、 .SCHEMA schema_name
、 .schema_name
現在使用中のスキーマまたは指定されたスキーマ(
schema_name
)の記録を返します。データベースが使用中の場合、または完全修飾
schema_name
(例:db.schema
) を指定する場合、SCHEMA
はオプションです。データベースが使用されていない場合は、
SCHEMA
を指定しても出力には影響しません。
APPLICATION application_name
、 .APPLICATION PACKAGE application_package_name
名前付き Snowflake Native App またはアプリケーションパッケージの記録を返します。
デフォルト: セッションで現在使用中のデータベースがあるかどうかによって異なります。
データベース:
DATABASE
がデフォルトです(つまり、コマンドはデータベースで表示する権限を持つオブジェクトを返します)。データベースなし:
ACCOUNT
はデフォルトです(つまり、コマンドは、アカウントで表示する権限を持つオブジェクトを返します)。
アクセス制御の要件¶
この SQL コマンドの実行に使用される ロール には、 最低 1 つ の次の 権限 が必要です。
権限 |
オブジェクト |
メモ |
---|---|---|
APPLY ROW ACCESS POLICY |
アカウント |
|
APPLY |
行アクセスポリシー |
|
OWNERSHIP |
行アクセスポリシー |
OWNERSHIP is a special privilege on an object that is automatically granted to the role that created the object, but can also be transferred using the GRANT OWNERSHIP command to a different role by the owning role (or any role with the MANAGE GRANTS privilege). |
スキーマ内のオブジェクトに対して操作を実行するには、親データベースとスキーマに対する USAGE 権限が必要です。
指定された権限のセットを使用してカスタムロールを作成する手順については、 カスタムロールの作成 をご参照ください。
セキュリティ保護可能なオブジェクト に対して SQL アクションを実行するためのロールと権限付与に関する一般的な情報については、 アクセス制御の概要 をご参照ください。
行アクセスポリシー DDL と権限の詳細については、 行アクセスポリシーを管理する をご参照ください。
使用上の注意¶
このコマンドは、稼働中のウェアハウスを必要としません。
LIMIT rows
の値は10000
を超えることはできません。LIMIT rows
が省略され、結果セットが10K行より大きい場合、コマンドはエラーになります。10Kを超える記録が存在する結果を表示するには、
LIMIT rows
を含めるか、 Snowflake Information Schema の対応するビューをクエリします。
このコマンドの出力を後処理するには、 RESULT_SCAN 関数を使用できます。この関数は、出力をクエリ可能なテーブルとして扱います。
例¶
次の例は、クエリを実行する ACCOUNTADMIN ロールを持つユーザーを表しています。
SHOW ROW ACCESS POLICIES;---------------------------------+------+---------------+-------------+-------------------+--------------+---------+---------+-----------------+ created_on | name | database_name | schema_name | kind | owner | comment | options | owner_role_type | ---------------------------------+------+---------------+-------------+-------------------+--------------+---------+---------+-----------------+ Fri, 23 Jun 1967 00:00:00 -0700 | P1 | RLS_AUTHZ_DB | S_D_1 | ROW_ACCESS_POLICY | ACCOUNTADMIN | | "" | ROLE | Fri, 23 Jun 1967 00:00:00 -0700 | P2 | RLS_AUTHZ_DB | S_D_2 | ROW_ACCESS_POLICY | ACCOUNTADMIN | | "" | ROLE | ---------------------------------+------+---------------+-------------+-------------------+--------------+---------+---------+-----------------+
次は、行アクセスポリシーが存在する親スキーマに USAGE がなく、ACCOUNTADMIN ロールではないロールの代表例です。
SHOW ROW ACCESS POLICIES; ---------------------------------+------+---------------+-------------+-------------------+--------------+---------+---------+-----------------+ created_on | name | database_name | schema_name | kind | owner | comment | options | owner_role_type | ---------------------------------+------+---------------+-------------+-------------------+--------------+---------+---------+-----------------+