本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
PG_GETGRANTEE_BY_IAM_ROLE
傳回授予指定IAM角色的所有使用者和群組。
語法
pg_get_grantee_by_iam_role('iam_role_arn')
引數
- iam_role_arn
-
傳回已授予此IAM角色之使用者和群組的角色。
傳回類型
VARCHAR
使用須知
PG_GET_GRANTEE_BY_IAM_ ROLE函數會為每個使用者或群組傳回一列。每一列都包含承授者名稱、承授者類型和授與的權限。承授者類型的可能值為 p
(代表公用)、u
(代表使用者) 和 g
(代表群組)。
您必須是超級使用者才能使用此函數。
範例
下列範例表示IAM角色Redshift-S3-Write
已授予 group1
和 reg_user1
。中的使用者只能為COPY操作group_1
指定角色,而使用者只能reg_user1
指定角色以執行UNLOAD操作。
select pg_get_grantee_by_iam_role('arn:aws:iam::123456789012:role/Redshift-S3-Write');
pg_get_grantee_by_iam_role ----------------------------- (group_1,g,COPY) (reg_user1,u,UNLOAD)
下列 PG_GET_GRANTEEBY_IAM_ ROLE函數範例會將結果格式化為資料表。
select grantee, grantee_type, cmd_type FROM pg_get_grantee_by_iam_role('arn:aws:iam::123456789012:role/Redshift-S3-Write') res_grantee(grantee text, grantee_type text, cmd_type text) ORDER BY 1,2,3;
grantee | grantee_type | cmd_type -----------+--------------+---------- group_1 | g | COPY reg_user1 | u | UNLOAD