HAS_ASSUMEROLE_PRIVILEGE
Devuelve el valor booleano true
(t
) si el usuario en cuestión tiene el rol de IAM especificado con el privilegio necesario para ejecutar el comando especificado. La función devuelve false
(f
) si el usuario no tiene el rol de IAM especificado con el privilegio necesario para ejecutar el comando especificado. Para obtener más información acerca de los privilegios, consulte GRANT.
Sintaxis
has_assumerole_privilege( [ user, ] iam_role_arn, cmd_type)
Argumentos
- usuario
-
El nombre del usuario para verificar los privilegios del rol de IAM. El valor predeterminado es comprobar el usuario actual. Los superusuarios y los usuarios pueden usar esta función. No obstante, los usuarios solo pueden ver sus propios privilegios.
- iam_role_arn
-
El rol de IAM al que se le han concedido los privilegios del comando.
- cmd_type
-
El comando para el que se ha concedido acceso. Los valores válidos son los siguientes:
-
COPY
-
UNLOAD
-
EXTERNAL FUNCTION
-
CREATE MODEL
-
Tipo de retorno
BOOLEAN
Ejemplo
La siguiente consulta confirma que el usuario reg_user1
tiene el privilegio por el cual el rol Redshift-S3-Read
puede ejecutar el comando COPY.
select has_assumerole_privilege('reg_user1', 'arn:aws:iam::123456789012:role/Redshift-S3-Read', 'copy');
has_assumerole_privilege ------------------------ true (1 row)