par
Louisss » 08 août 2008, 17:17
Bonjour.
Je suis en train d'essayer d'améliorer un peu l'administration de mes bases MySQL en suivant les conseils du manuel PHP, et il y a un truc que je ne comprend pas bien : que faut-il configurer pour qu'un utilisateur n'ait des droits que sur une seule base ?
Si j'ai bien compris, les droits attribués aux utilisateurs sont catégorisés de la façon suivante :
1) Les droits globaux qui s'appliquent à toutes les bases et les droits administratifs.
2) Les droits spécifiques à une base en particulier.
3) Les droits spécifiques à une table en particulier.
Je me suis donc créé un utilisateur dont le but est uniquement de gérer les requêtes type SELECT, INSERT, UPDATE et DELETE dans une base. Donc, je ne lui donne aucun droit global, mais uniquement ces 4 droits pour la base en question. Résultat : ça ne fonctionne pas. Je ne reçois aucun message d'erreur signalant un problème de connexion, mais il n'exécute aucune requête. D'après le manuel de MySQL, j'en conclu qu'il franchi le premier contrôle d'accès (vérification de la connexion), mais pas le second (vérification de la requête).
J'essaie de lui donner tous les droits sur la base : même résultat.
Je lui donne finalement ces 4 droits au niveau global, et là ça marche. Mais je ne veux justement pas lui donner des droits globaux !
Petite précision : je manipule les droits avec PHPMyAdmin 2.10.2 et MySQL est en version 5.0.41.
Qu'est-ce qui m'a échappé ?
Merci d'avance
Bonjour.
Je suis en train d'essayer d'améliorer un peu l'administration de mes bases MySQL en suivant les conseils du manuel PHP, et il y a un truc que je ne comprend pas bien : que faut-il configurer pour qu'un utilisateur n'ait des droits que sur une seule base ?
Si j'ai bien compris, les droits attribués aux utilisateurs sont catégorisés de la façon suivante :
1) Les droits globaux qui s'appliquent à toutes les bases et les droits administratifs.
2) Les droits spécifiques à une base en particulier.
3) Les droits spécifiques à une table en particulier.
Je me suis donc créé un utilisateur dont le but est uniquement de gérer les requêtes type SELECT, INSERT, UPDATE et DELETE dans une base. Donc, je ne lui donne aucun droit global, mais uniquement ces 4 droits pour la base en question. Résultat : ça ne fonctionne pas. Je ne reçois aucun message d'erreur signalant un problème de connexion, mais il n'exécute aucune requête. D'après le manuel de MySQL, j'en conclu qu'il franchi le premier contrôle d'accès (vérification de la connexion), mais pas le second (vérification de la requête).
J'essaie de lui donner tous les droits sur la base : même résultat.
Je lui donne finalement ces 4 droits au niveau global, et là ça marche. Mais je ne veux justement pas lui donner des droits globaux !
Petite précision : je manipule les droits avec PHPMyAdmin 2.10.2 et MySQL est en version 5.0.41.
Qu'est-ce qui m'a échappé ?
Merci d'avance