HAS_ASSUMEROLE_PRIVILEGE - Amazon Redshift

Amazon Redshift は、2025 年 11 月 1 日以降、新しい Python UDF の作成をサポートしなくなります。Python UDF を使用する場合は、その日付より前に UDF を作成してください。既存の Python UDF は引き続き通常どおり機能します。詳細については、ブログ記事を参照してください。

HAS_ASSUMEROLE_PRIVILEGE

指定されたユーザーが、指定されたコマンドの実行権限がある特定の IAM ロールを持っている場合、Boolean 型の true (t) を返します。指定されたコマンドを実行する権限が付与された、特定の IAM ロールがユーザーにない場合、この関数では false (f) が返されます。権限の詳細については、「GRANT」を参照してください。

構文

has_assumerole_privilege( [ user, ] iam_role_arn, cmd_type)

引数

ユーザー

IAM ロールに対する権限をチェックするユーザーの名前。デフォルトでは、現在のユーザーが検査されます。スーパーユーザーとユーザーはこの機能を使用できます。ただし、ユーザーは自分の権限しか表示できません。

iam_role_arn

コマンド権限が付与されている IAM ロール。

cmd_type

アクセスが許可されているコマンド。有効な値は以下のとおりです。

  • COPY

  • UNLOAD

  • EXTERNAL FUNCTION

  • モデルを作成する

戻り型

BOOLEAN

次のクエリは、ユーザー reg_user1 が COPY コマンドを実行するための Redshift-S3-Read ロールの権限を持っていることを確認します。

select has_assumerole_privilege('reg_user1', 'arn:aws:iam::123456789012:role/Redshift-S3-Read', 'copy');
has_assumerole_privilege ------------------------ true (1 row)