PG_GET_IAM_ROLE_BY_USER
返回授予用户的所有 IAM 角色和命令权限。
语法
pg_get_iam_role_by_user('name')
参数
- 名称
-
要返回 IAM 角色的用户的名称。
返回类型
VARCHAR
使用说明
PG_GET_IAM_ROLE_BY_USER 函数为每组角色和命令特权返回一行。该行包含一个逗号分隔列表,其中包括用户名、IAM 角色和命令。
结果中的值 default
表示用户可以指定任何可用角色来执行显示的命令。
您必须是超级用户才能使用函数。
示例
以下示例指示用户 reg_user1
可以指定任何可用的 IAM 角色来执行 COPY 操作。用户也可以指定 Redshift-S3-Write
角色进行 UNLOAD 操作。
select pg_get_iam_role_by_user('reg_user1');
pg_get_iam_role_by_user --------------------------------------------------------------------------------- (reg_user1,default,COPY) (reg_user1,arn:aws:iam::123456789012:role/Redshift-S3-Write,COPY|UNLOAD)
下面的 PG_GET_IAM_ROLE_BY_USER 函数示例将结果格式化为表格。
select username, iam_role, cmd FROM pg_get_iam_role_by_user('reg_user1') res_iam_role(username text, iam_role text, cmd text);
username | iam_role | cmd -----------+-------------------------------------------------+------ reg_user1 | default | None reg_user1 | arn:aws:iam::123456789012:role/Redshift-S3-Read | COPY