HAS_ASSUMEROLE_PRIVILEGE - Amazon Redshift
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

HAS_ASSUMEROLE_PRIVILEGE

如果用户具有指定的 IAM 角色,并且具有运行指定命令的权限,则该函数将返回布尔值 truet);如果用户没有具有运行指定命令的权限的指定 IAM 角色,则函数将返回 falsef)。有关权限的更多信息,请参阅 GRANT.

Syntax

has_assumerole_privilege( [ user, ] iam_role_arn, cmd_type)

Arguments

user

要检查 IAM 角色权限的用户的名称。默认为检查当前用户。超级用户和用户可以使用此函数。但是,用户只能查看自己的权限。

iam_role_arn

已授予命令权限的角色。

cmd_type

已授予其访问权限的命令。有效值如下所示:

  • ALL

  • COPY

  • UNLOAD

返回类型

BOOLEAN

Example

以下查询确认用户对 reg_user1 角色Redshift-S3-Read具有 权限以运行 COPY 命令。

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