1. Supprimer des droits sur la manipulation d’une
table
Une fois les droits attribués, il
faut pouvoir les enlever si l’utilisateur quitte l’entreprise par
exemple ou change de service. Pour ceci, nous utiliserons l’ordre
REVOKE. REVOKE
La syntaxe Oracle est la suivante
REVOKE <droit1>, <droit2>, ...
ON TABLE <nom table>
FROM <user1>, <user2> ...;
La syntaxe MySQL est la suivante
REVOKE <droit1>, <droit2>, ...
ON [TABLE <nom table>],[*]
FROM <user1>, <user2> ...;
Pour enlever les droits de lecture de la
table UTILISATEURS à Mr SMITH par exemple :
REVOKE SELECT ON UTILISATEURS FROM ASMITH;
Pour enlever tous les droits à Mr
Smith :
REVOKE ALL PRIVILEGES ON UTILISATEURS FROM ASMITH;
De la même façon que le
GRANT, si on ajoute le mot PUBLIC, on supprime les droits sur cette
table pour tous les utilisateurs de la base de données.
REVOKE ALL PRIVILEGES REVOKE ALL PRIVILEGES ON UTILISATEURS FROM PUBLIC;
2. Supprimer des droits sur les objets de la base
Comme pour la manipulation d’une
table, on peut supprimer des droits que l’on a attribués
sur la création de table ou la création d’index
par exemple.
Exemple Oracle
REVOKE CREATE TABLE FROM ASMITH;
Exemple MySQL
REVOKE CREATE ON * ON ’ASMITH’;
Pour supprimer les droits de modification,
de suppression et de création de tables en une seule commande, ...