Catégories :

Utilisateur et sécurité DDL (Rôles)

DROP ROLE

Supprime le rôle spécifié du système.

Voir aussi :

CREATE ROLE , ALTER ROLE , SHOW ROLES

Syntaxe

DROP ROLE [ IF EXISTS ] <name>

Paramètres

nom

Spécifie l’identificateur du rôle à détruire. Si l’identificateur contient des espaces ou des caractères spéciaux, toute la chaîne doit être délimitée par des guillemets doubles. Les identificateurs entre guillemets doubles sont également sensibles à la casse.

Notes sur l’utilisation

  • Les rôles détruits ne peuvent être récupérés ; ils doivent être recréés.

  • La propriété des objets appartenant au rôle détruit est transférée au rôle qui exécute la commande DROP ROLE. Pour transférer la propriété de chacun de ces objets à un rôle différent, utilisez GRANT OWNERSHIP … COPY CURRENT GRANTS.

  • Si un rôle dispose d’un futur privilège en tant que concédant ou bénéficiaire, ce rôle ne peut être détruit que par un utilisateur disposant d’un rôle disposant du privilège MANAGE GRANTS.

  • Toutes les autorisations actuelles et futures qui désignent le rôle comme étant celui du concédant ou du bénéficiaire sont supprimées lorsque le rôle est détruit.

    Interrogez la vue Account Usage GRANTS_TO_ROLES pour récupérer les attributions de privilèges qui désignent un rôle spécifié en tant que concédant ou bénéficiaire :

    SELECT *
      FROM snowflake.account_usage.grants_to_roles
      WHERE grantee_name = upper('<role_name>') OR granted_by = upper('<role_name>');
    

    L’exemple suivant récupère les attributions où myrole est le concédant ou le bénéficiaire :

    SELECT *
      FROM snowflake.account_usage.grants_to_roles
      WHERE grantee_name = upper('myrole') OR granted_by = upper('myrole');
    
  • Si un rôle est un concédant de rôles aux utilisateurs, la destruction du rôle révoque automatiquement ces autorisations.

Exemples

DROP ROLE myrole;
Revenir au début