Passer au contenu principal
Révoque les privilèges accordés à des utilisateurs ou à des rôles.

Syntaxe

Révocation des privilèges aux utilisateurs
REVOKE [ON CLUSTER cluster_name] privilege[(column_name [,...])] [,...] ON {db.table|db.*|*.*|table|*} FROM {user | CURRENT_USER} [,...] | ALL | ALL EXCEPT {user | CURRENT_USER} [,...]
Révocation de rôles à des utilisateurs
REVOKE [ON CLUSTER cluster_name] [ADMIN OPTION FOR] role [,...] FROM {user | role | CURRENT_USER} [,...] | ALL | ALL EXCEPT {user_name | role_name | CURRENT_USER} [,...]

Description

Pour révoquer un privilège donné, vous pouvez utiliser un privilège de portée plus large que le privilège que vous souhaitez révoquer. Par exemple, si un utilisateur possède le privilège SELECT (x,y), un administrateur peut exécuter la requête REVOKE SELECT(x,y) ..., ou REVOKE SELECT * ..., ou même REVOKE ALL PRIVILEGES ... pour révoquer ce privilège.

Révocations partielles

Vous pouvez révoquer une partie d’un privilège. Par exemple, si un utilisateur possède le privilège SELECT *.*, vous pouvez lui révoquer le privilège de lire des données dans une table ou une base de données spécifique.

Exemples

Accordez au compte utilisateur john le privilège de sélectionner dans toutes les bases de données, à l’exception de accounts :
GRANT SELECT ON *.* TO john;
REVOKE SELECT ON accounts.* FROM john;
Accordez au compte utilisateur mira le privilège de sélectionner toutes les colonnes de la table accounts.staff, à l’exception de wage.
GRANT SELECT ON accounts.staff TO mira;
REVOKE SELECT(wage) ON accounts.staff FROM mira;
Article d’origine
Dernière modification le 25 juin 2026