Options supplémentaires
La commande GRANT possède encore deux clauses facultatives supplémentaires, permettant de limiter les ressources serveur de
l'utilisateur, et d'obliger l'utilisateur à se connecter via SSL.
Limitation des ressources
On peut limiter trois choses différentes pour un utilisateur :
le nombre de requêtes par heure (MAX_QUERIES_PER_HOUR) : limitation de toutes les commandes exécutées par
l'utilisateur ;
le nombre de modifications par heure (MAX_UPDATES_PER_HOUR) : limitation des commandes entraînant la
modification d'une table ou d'une base de données ;
le nombre de connexions au serveur par heure (MAX_CONNECTIONS_PER_HOUR).
Pour cela, on utilise la clause WITH MAX_QUERIES_PER_HOUR nb | MAX_UPDATES_PER_HOUR nb |
MAX_CONNECTIONS_PER_HOUR nb de la commande GRANT. On peut limiter une des ressources, ou deux, ou les trois en
une fois, chacune avec un nombre différent.
Exemple : création d'un compte 'aline'@'localhost' ayant tous les droits sur la base de données elevage, mais avec des
ressources limitées.
Code : SQL
GRANT ALL ON elevage.*
TO 'aline'@'localhost' IDENTIFIED BY 'limited'
WITH MAX_QUERIES_PER_HOUR 50
MAX_CONNECTIONS_PER_HOUR 5;
Pour limiter les ressources d'un utilisateur existant sans modifier ses privilèges, on peut utiliser le privilège USAGE.
Exemple
Code : SQL
GRANT USAGE ON *.*
TO 'john'@'localhost'
WITH MAX_UPDATES_PER_HOUR 15;
Pour supprimer une limitation de ressources, il suffit de la mettre à zéro.
Exemple
Code : SQL
GRANT USAGE ON *.*
TO 'john'@'localhost'
WITH MAX_UPDATES_PER_HOUR 0;
Connexion SSL
La clause REQUIRE de la commande GRANT permet d'obliger l'utilisateur à se connecter via SSL, c'est-à-dire à l'aide d'une
connexion sécurisée. Avec une telle connexion, toutes les données transitant entre le client et le serveur sont chiffrées, et non
plus passées en clair.
Partie 7 : Gestion des utilisateurs et configuration du serveur
391/414
www.openclassrooms.com
La commande GRANT possède encore deux clauses facultatives supplémentaires, permettant de limiter les ressources serveur de
l'utilisateur, et d'obliger l'utilisateur à se connecter via SSL.
Limitation des ressources
On peut limiter trois choses différentes pour un utilisateur :
le nombre de requêtes par heure (MAX_QUERIES_PER_HOUR) : limitation de toutes les commandes exécutées par
l'utilisateur ;
le nombre de modifications par heure (MAX_UPDATES_PER_HOUR) : limitation des commandes entraînant la
modification d'une table ou d'une base de données ;
le nombre de connexions au serveur par heure (MAX_CONNECTIONS_PER_HOUR).
Pour cela, on utilise la clause WITH MAX_QUERIES_PER_HOUR nb | MAX_UPDATES_PER_HOUR nb |
MAX_CONNECTIONS_PER_HOUR nb de la commande GRANT. On peut limiter une des ressources, ou deux, ou les trois en
une fois, chacune avec un nombre différent.
Exemple : création d'un compte 'aline'@'localhost' ayant tous les droits sur la base de données elevage, mais avec des
ressources limitées.
Code : SQL
GRANT ALL ON elevage.*
TO 'aline'@'localhost' IDENTIFIED BY 'limited'
WITH MAX_QUERIES_PER_HOUR 50
MAX_CONNECTIONS_PER_HOUR 5;
Pour limiter les ressources d'un utilisateur existant sans modifier ses privilèges, on peut utiliser le privilège USAGE.
Exemple
Code : SQL
GRANT USAGE ON *.*
TO 'john'@'localhost'
WITH MAX_UPDATES_PER_HOUR 15;
Pour supprimer une limitation de ressources, il suffit de la mettre à zéro.
Exemple
Code : SQL
GRANT USAGE ON *.*
TO 'john'@'localhost'
WITH MAX_UPDATES_PER_HOUR 0;
Connexion SSL
La clause REQUIRE de la commande GRANT permet d'obliger l'utilisateur à se connecter via SSL, c'est-à-dire à l'aide d'une
connexion sécurisée. Avec une telle connexion, toutes les données transitant entre le client et le serveur sont chiffrées, et non
plus passées en clair.
Partie 7 : Gestion des utilisateurs et configuration du serveur
391/414
www.openclassrooms.com
