DROP ROLE - Amazon Redshift

Amazon Redshift ne prendra plus en charge la création de nouvelles fonctions Python définies par l’utilisateur à compter du 1er novembre 2025. Si vous souhaitez utiliser des fonctions Python définies par l’utilisateur, créez-les avant cette date. Les fonctions Python définies par l’utilisateur existantes continueront de fonctionner normalement. Pour plus d’informations, consultez le billet de blog .

DROP ROLE

Supprime un rôle d’une base de données. Seul le propriétaire du rôle qui a créé le rôle, un utilisateur avec l’option WITH ADMIN ou un super-utilisateur peut supprimer un rôle.

Vous ne pouvez pas supprimer un rôle accordé à un utilisateur ou à un autre rôle dépendant de ce rôle.

Privilèges requis

Voici les privilèges requis pour DROP ROLE :

  • Superuser

  • Propriétaire du rôle qui est soit l’utilisateur qui a créé le rôle, soit un utilisateur qui s’est vu accorder le rôle avec le privilège WITH ADMIN OPTION.

Syntaxe

DROP ROLE role_name [ FORCE | RESTRICT ]

Paramètres

role_name

Nom du rôle.

[ FORCE | RESTRICT ]

Le paramètre par défaut est RESTRICT. Amazon Redshift génère une erreur lorsque vous tentez de supprimer un rôle qui a hérité d’un autre rôle. Utilisez FORCE pour supprimer, le cas échéant, toutes les affectations de rôle.

Exemples

L’exemple suivant supprime le rôle sample_role.

DROP ROLE sample_role FORCE;

L’exemple suivant tente de supprimer le rôle sample_role1 accordé à un utilisateur avec l’option RESTRICT par défaut.

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

Pour supprimer correctement le rôle sample_role1 qui a été accordé à un utilisateur, utilisez l’option FORCE.

DROP ROLE sample_role1 FORCE;

L’exemple suivant tente de supprimer le rôle sample_role2 dont un autre rôle dépend avec l’option RESTRICT par défaut.

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

Pour supprimer correctement le rôle sample_role2 dont un autre rôle dépend, utilisez l’option FORCE.

DROP ROLE sample_role2 FORCE;