© Éditions Eyrolles
171
chapitre n° 5
Contrôle des données
Vérifications
Une fois ces actualisations réalisées, les cinq tables de la base mysql contiennent un peu plus
le caractère 'N' qu’auparavant. Les colonnes SET des tables mysql.tables_priv,
mysql.columns_priv et mysql.procs_priv sont également mises à jour. Ainsi,
l’extraction du profil actuel de Paul au niveau table fait apparaître les deux seuls droits qu’il
lui reste.
SELECT CONCAT(User,'@',Host) "Compte",CONCAT(Db,'.',Table_name)
"Objet",
Grantor, Table_priv FROM mysql.tables_priv
WHERE User='Paul' AND Host='localhost';
+----------------+--------------+----------------+---------------+
| Compte
| Objet
| Grantor
| Table_priv
|
+----------------+--------------+----------------+---------------+
| Paul@localhost | bdpaul.Livre | root@localhost | Select,Delete |
+----------------+--------------+----------------+---------------+
L’extraction du profil actuel de Jules au niveau database fait apparaître que les deux limitations de connexion sur les SELECT et UPDATE ont disparu.
SELECT Host,User, max_questions "Requetes", max_updates "Modifs" ,
max_connections "Connexions", max_user_connections "Cx simult."
FROM mysql.user WHERE User='Jules' AND Host='localhost';
+-----------+-------+----------+--------+------------+------------+
| Host
| User | Requetes | Modifs | Connexions | Cx simult. |
+-----------+-------+----------+--------+------------+------------+
| localhost | Jules |
|
6 |
3 |
+-----------+-------+----------+--------+------------+------------+
Tout en une fois !
Il existe une instruction qui révoque tous les droits en une fois. Vous en avez assez d’un utilisateur qui ne cesse de vous casser les pieds, utilisez REVOKE ALL PRIVILEGES. Pensez
quand même à sauvegarder au préalable le profil de Jules (SHOW GRANT FOR) pour
pouvoir le faire travailler de nouveau quand vous serez calmé.
Selon la documentation officielle, la syntaxe suivante permet de supprimer toutes les prérogatives aux niveaux global, database, table et column. Et les privilèges routine, me direz-vous ?
Ils ont dû l’oublier dans la documentation, mais ils sont aussi effacés, ne vous inquiétez pas, je
l’ai testé.
REVOKE ALL PRIVILEGES, GRANT OPTION FROM utilisateur [, utilisateur2 ...] ;
Pour pouvoir annihiler ainsi un utilisateur, il faut détenir le privilège CREATE USER au niveau
global ou le privilège UPDATE au niveau database sur la base mysql.
0 |
0
Précédent

- 193/418

Suivant