DROP ROLE - Amazon Redshift

DROP ROLE

Elimina un rol de una base de datos. Solo pueden eliminar un rol el propietario del rol que lo haya creado, un usuario con la opción WITH ADMIN o un superusuario.

No se puede eliminar un rol que esté concedido a un usuario o si otro rol depende de él.

Privilegios necesarios

Los siguientes privilegios son necesarios para DROP ROLE:

  • Superusuario

  • Propietario del rol que sea el usuario que haya creado el rol o un usuario al que se le haya concedido el rol con el privilegio WITH ADMIN OPTION.

Sintaxis

DROP ROLE role_name [ FORCE | RESTRICT ]

Parámetros

role_name

Nombre del rol

[ FORCE | RESTRICT ]

La configuración predeterminada es RESTRICT. Amazon Redshift genera un error cuando se intenta eliminar un rol que ha heredado otro rol. Utilice FORCE para eliminar todas las asignaciones de roles, si existe alguna.

Ejemplos

El siguiente ejemplo elimina el rol sample_role.

DROP ROLE sample_role FORCE;

El siguiente ejemplo intenta eliminar el rol sample_role1 que se ha concedido a un usuario con la opción RESTRICT predeterminada.

CREATE ROLE sample_role1; GRANT ROLE sample_role1 TO user1; DROP ROLE sample_role1; ERROR: cannot drop this role since it has been granted on a user

Para eliminar correctamente el rol sample_role1 que se haya concedido a un usuario, utilice la opción FORCE.

DROP ROLE sample_role1 FORCE;

El siguiente ejemplo intenta eliminar el rol sample_role2 que tiene otro rol dependiente de él con la opción RESTRICT predeterminada.

CREATE ROLE sample_role1; CREATE ROLE sample_role2; GRANT ROLE sample_role1 TO sample_role2; DROP ROLE sample_role2; ERROR: cannot drop this role since it depends on another role

Para eliminar correctamente el rol sample_role2 que tenga otro rol que dependa de él, utilice la opción FORCE.

DROP ROLE sample_role2 FORCE;