Amazon Redshift は、パッチ 198 以降、新しい Python UDF の作成をサポートしなくなります。既存の Python UDF は、2026 年 6 月 30 日まで引き続き機能します。詳細については、ブログ記事
SHOW GRANTS
ユーザー、ロール、またはオブジェクトの権限を表示します。オブジェクトは、データベース、スキーマ、テーブル、関数、テンプレートです。テーブルや関数などのオブジェクトを指定する場合は、2 部または 3 部構成の表記で修飾する必要があります。例えば、schema_name.table_name、database_name.schema_name.table_name です。
SHOW GRANTS の結果が 10,000 行を超える場合、コマンドはエラーを生成します。
必要なアクセス許可
ターゲットユーザーまたはロールに対して SHOW GRANTS を実行するには、現在のユーザーが次のいずれかの条件を満たす必要があります。
-
スーパーユーザーである
-
ターゲットユーザーである
-
ターゲットロールの所有者である
-
ロールが付与されている
ターゲットオブジェクトの SHOW GRANTS には、現在のユーザーに表示される権限のみが表示されます。現在のユーザーが次の条件のいずれかを満たしている場合、権限は現在のユーザーに表示されます。
-
スーパーユーザーである
-
ターゲットユーザーである
-
権限が付与されたロールの所有者の権限が付与されている
-
オブジェクト権限の対象となるロールが付与されている
構文
オブジェクトに対する許可を表示するための構文を次に示します。関数を指定する 2 番目の方法は、データ共有から作成した外部スキーマとデータベースでのみ有効であることに注意してください。
SHOW GRANTS ON { DATABASE database_name | FUNCTION {database_name.schema_name.function_name | schema_name.function_name } ( [ [ argname ] argtype [, ...] ] ) | FUNCTION {database_name.schema_name.function_name | schema_name.function_name } | SCHEMA {database_name.schema_name | schema_name} | { TABLE {database_name.schema_name.table_name | schema_name.table_name} | table_name } TEMPLATE {database_name.schema_name.template_name | template_name} } [FOR {username | ROLE role_name | PUBLIC}] [LIMIT row_limit]
ユーザーまたはロールの許可を表示するための構文を次に示します。
SHOW GRANTS FOR {username | ROLE role_name} [FROM DATABASE database_name] [LIMIT row_limit]
パラメータ
- database_name
-
権限を表示する対象のデータベースの名前。
- function_name
-
権限を表示する対象の関数の名前。
- template_name
-
権限を表示する対象のテンプレートの名前。
- schema_name
-
権限を表示する対象のスキーマの名前。
- table_name
-
権限を表示する対象のテーブルの名前。
- FOR username
-
ユーザーの権限を表示することを示します。
- FOR ROLE role_name
-
ロールの権限を表示することを示します。
- FOR PUBLIC
-
PUBLIC の権限を表示することを示します。
- row_limit
-
返される行の最大数。row_limit には、0~10,000 の値を指定できます。
例
次の例は、dev という名前のデータベースに対するすべての権限を表示します。
SHOW GRANTS on database demo_db; database_name | privilege_type | identity_id | identity_name | identity_type | admin_option | privilege_scope | grantor_name ---------------+----------------+-------------+---------------+---------------+--------------+-----------------+-------------- demo_db | ALTER | 112 | alice | user | f | TABLES | dbadmin demo_db | TRUNCATE | 112 | alice | user | f | TABLES | dbadmin demo_db | DROP | 112 | alice | user | f | TABLES | dbadmin demo_db | INSERT | 112 | alice | user | f | TABLES | dbadmin demo_db | TEMP | 0 | public | public | f | DATABASE | dbadmin demo_db | SELECT | 112 | alice | user | f | TABLES | dbadmin demo_db | UPDATE | 112 | alice | user | f | TABLES | dbadmin demo_db | DELETE | 112 | alice | user | f | TABLES | dbadmin demo_db | REFERENCES | 112 | alice | user | f | TABLES | dbadmin
次のコマンドは、demo という名前のスキーマに対するすべての権限を表示します。
SHOW GRANTS ON SCHEMA demo_schema; schema_name | object_name | object_type | privilege_type | identity_id | identity_name | identity_type | admin_option | privilege_scope | database_name | grantor_name -------------+-------------+-------------+----------------+-------------+---------------+---------------+--------------+-----------------+---------------+-------------- demo_schema | demo_schema | SCHEMA | ALTER | 112 | alice | user | f | SCHEMA | db1 | dbadmin demo_schema | demo_schema | SCHEMA | DROP | 112 | alice | user | f | SCHEMA | db1 | dbadmin demo_schema | demo_schema | SCHEMA | USAGE | 112 | alice | user | f | SCHEMA | db1 | dbadmin demo_schema | demo_schema | SCHEMA | CREATE | 112 | alice | user | f | SCHEMA | db1 | dbadmin
次のコマンドは、alice という名前のユーザーに対するすべての権限を表示します。
SHOW GRANTS FOR alice; database_name | schema_name | object_name | object_type | privilege_type | identity_id | identity_name | identity_type | privilege_scope | grantor_name ---------------+-------------+-------------+-------------+----------------+-------------+---------------+---------------+-----------------+-------------- demo_db | | | DATABASE | INSERT | 124 | alice | user | TABLES | dbadmin demo_db | | | DATABASE | SELECT | 124 | alice | user | TABLES | dbadmin demo_db | | | DATABASE | UPDATE | 124 | alice | user | TABLES | dbadmin demo_db | | | DATABASE | DELETE | 124 | alice | user | TABLES | dbadmin demo_db | | | DATABASE | REFERENCES | 124 | alice | user | TABLES | dbadmin demo_db | | | DATABASE | DROP | 124 | alice | user | TABLES | dbadmin demo_db | | | DATABASE | TRUNCATE | 124 | alice | user | TABLES | dbadmin demo_db | | | DATABASE | ALTER | 124 | alice | user | TABLES | dbadmin demo_db | demo_schema | | SCHEMA | USAGE | 124 | alice | user | SCHEMA | dbadmin demo_db | demo_schema | | SCHEMA | CREATE | 124 | alice | user | SCHEMA | dbadmin demo_db | demo_schema | | SCHEMA | DROP | 124 | alice | user | SCHEMA | dbadmin demo_db | demo_schema | | SCHEMA | ALTER | 124 | alice | user | SCHEMA | dbadmin demo_db | demo_schema | t1 | TABLE | INSERT | 124 | alice | user | TABLE | dbadmin demo_db | demo_schema | t1 | TABLE | SELECT | 124 | alice | user | TABLE | dbadmin demo_db | demo_schema | t1 | TABLE | UPDATE | 124 | alice | user | TABLE | dbadmin demo_db | demo_schema | t1 | TABLE | DELETE | 124 | alice | user | TABLE | dbadmin demo_db | demo_schema | t1 | TABLE | RULE | 124 | alice | user | TABLE | dbadmin demo_db | demo_schema | t1 | TABLE | REFERENCES | 124 | alice | user | TABLE | dbadmin demo_db | demo_schema | t1 | TABLE | TRIGGER | 124 | alice | user | TABLE | dbadmin demo_db | demo_schema | t1 | TABLE | DROP | 124 | alice | user | TABLE | dbadmin demo_db | demo_schema | t1 | TABLE | TRUNCATE | 124 | alice | user | TABLE | dbadmin demo_db | demo_schema | t1 | TABLE | ALTER | 124 | alice | user | TABLE | dbadmin
SHOW GRANTS FOR alice FROM DATABASE second_db; database_name | schema_name | object_name | object_type | privilege_type | identity_id | identity_name | identity_type | privilege_scope | grantor_name ---------------+-------------+-------------+-------------+----------------+-------------+---------------+---------------+-----------------+-------------- second_db | public | t22 | TABLE | SELECT | 101 | alice | user | TABLE | dbadmin
次のコマンドは、alice という名前のユーザーについて t3 という名前のテーブルに対するすべての権限を表示します。テーブル名を指定するには、2 部または 3 部構成の表記を使用できることに留意してください。
SHOW GRANTS ON TABLE demo_db.demo_schema.t3 FOR ALICE; schema_name | object_name | object_type | privilege_type | identity_id | identity_name | identity_type | admin_option | privilege_scope | database_name | grantor_name -------------+-------------+-------------+----------------+-------------+---------------+---------------+--------------+-----------------+---------------+-------------- demo_schema | t3 | TABLE | ALTER | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | TRUNCATE | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | DROP | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | TRIGGER | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | SELECT | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | INSERT | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | UPDATE | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | DELETE | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | RULE | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | REFERENCES | 130 | alice | user | f | TABLE | demo_db | dbadmin SHOW GRANTS ON TABLE demo_schema.t3 FOR ALICE; schema_name | object_name | object_type | privilege_type | identity_id | identity_name | identity_type | admin_option | privilege_scope | database_name | grantor_name -------------+-------------+-------------+----------------+-------------+---------------+---------------+--------------+-----------------+---------------+-------------- demo_schema | t3 | TABLE | ALTER | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | TRUNCATE | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | DROP | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | TRIGGER | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | SELECT | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | INSERT | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | UPDATE | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | DELETE | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | RULE | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | REFERENCES | 130 | alice | user | f | TABLE | demo_db | dbadmin
次の例は、t4 という名前のテーブルに対するすべての権限を表示します。テーブル名は複数の異なる方法で指定できることに留意してください。
SHOW GRANTS ON t4; schema_name | object_name | object_type | privilege_type | identity_id | identity_name | identity_type | admin_option | privilege_scope | database_name | grantor_name -------------+-------------+-------------+----------------+-------------+---------------+---------------+--------------+-----------------+---------------+-------------- public | t4 | TABLE | ALTER | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | TRUNCATE | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | DROP | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | TRIGGER | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | SELECT | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | INSERT | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | UPDATE | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | DELETE | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | RULE | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | REFERENCES | 130 | alice | user | f | TABLE | demo_db | dbadmin SHOW GRANTS ON TABLE public.t4; schema_name | object_name | object_type | privilege_type | identity_id | identity_name | identity_type | admin_option | privilege_scope | database_name | grantor_name -------------+-------------+-------------+----------------+-------------+---------------+---------------+--------------+-----------------+---------------+-------------- public | t4 | TABLE | ALTER | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | TRUNCATE | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | DROP | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | TRIGGER | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | SELECT | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | INSERT | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | UPDATE | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | DELETE | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | RULE | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | REFERENCES | 130 | alice | user | f | TABLE | demo_db | dbadmin