PG_GET_GRANTEE_BY_IAM_ROLE - Amazon Redshift

PG_GET_GRANTEE_BY_IAM_ROLE

Retorna todos os usuários e grupos que receberam uma função do IAM especificada.

Sintaxe

pg_get_grantee_by_iam_role('iam_role_arn')

Argumentos

iam_role_arn

A função do IAM para a qual retornar os usuários e grupos que receberam essa função.

Tipo de retorno

VARCHAR

Observações de uso

A função PG_GET_GRANTEE_BY_BY_IAM_ROLE retorna uma linha para cada usuário ou grupo. Cada linha contém o nome do favorecido, o tipo de favorecido e o privilégio concedido. Os valores possíveis para o tipo de favorecido são p para público, u para o usuário, e g para o grupo.

É preciso ser um superusuário para usar esta função.

Exemplo

O exemplo a seguir indica que a função do IAM Redshift-S3-Write é concedida a group1 e reg_user1. Usuários no group_1 pode especificar a função somente para operações COPY, e o usuário reg_user1 pode especificar a função somente para executar operações 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)

O exemplo a seguir da função PG_GET_GRANTEE_BY_IAM_ROLE formata o resultado como uma tabela.

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