Configuration phpMyAdmin en Multi-Utilisateur

Eléphant du PHP | 72 Messages

09 déc. 2005, 01:07

Bonjour à tous !

J'ai un serveur MySQL et je voudrais que chaque utilisateur ait sa base de données. J'ai parametré le fichier de configuration de phpMyAdmin pour une identification via Cookie et tout fonctionne mais ...
Un utilisateur normal voit et ne devrait pas voir :
- Afficher l'état du serveur
- Afficher les variables du serveur
- Jeux de caractères et interclassement
Et il voit aussi en plus de sa base de données, la base : information_shema ...

Comment configurer tout ça pour que ce soit comme chez un hébergeur ?

Merci d'avance :D

ViPHP
ViPHP | 649 Messages

16 déc. 2005, 19:29

Je te recommande le logiciel Mysql Administrator, qui est en libre téléchargement sur le site officiel de mysql.

Le lien: http://dev.mysql.com/downloads/administrator/

Il simplifie grandement la gestion des utilisateurs, c'est son domaine.
Image

Administrateur PHPfrance
Administrateur PHPfrance | 3131 Messages

16 déc. 2005, 21:51

En premier je choisirais plutot "http" comme mode, car "cookie" est souvent buggé, c'est d'ailleurs explicitement dit dans la documentation.

Ensuite, phpMyAdmin donne à l'utilisateur uniquement les droits que mysql lui a attribué. Vérifie donc bien les droits de cet utilisateur (section "privilège" depuis la page d'accueil, édite l'utilisateurs, et vérifie ses privilèges, en particulier dans le champ sous les privilèges globaux sélectionne la base pour vérifier s'il n'y a pas des privilèges particuliers attribués à cet utilisateur pour cette base uniquement).

ViPHP
ViPHP | 649 Messages

17 déc. 2005, 23:44

En gros, par défaut, tu lui donnes aucun privilège sauf les droits à une seule base qui porte son nom d'utilisateur. Lorsqu'il créé son compte, tu exécutes tout bêtement cette requête: CREATE DATABASE '$username' et, tu remplis une entrée de la table user dans la base mysql.
Image

Administrateur PHPfrance
Administrateur PHPfrance | 250 Messages

19 déc. 2005, 08:58

bonjour

il faut choisir le mode d'authentification http dans le fichier de configuration de phpmyadmin.
de telle sorte, les login / pass envoyés a la base correspondent a des utilisateurs enregistrés dans la base mysql.
si ton utilsateur n'a les droits que sur sa base, il ne verra pas les autres.

Nicolo
Invité n'ayant pas de compte PHPfrance

07 juin 2006, 12:05

Bonjour, désolé de remonter le poste mais je ne trouve pas non plus dans phpmyadmin comment empecher mon utilisateur de voir le schéma systeme "INFORMATION_SCHEMA"

Dans les privileges de la table en root je ne vois que root qui peut y acceder, et chacun de mes utilisateur dispose de droit sur sa table personnelle et rien d'autre ... quelqu'un aurait il une petite idée de comment cacher "INFORMATION_SCHEMA" ?

Merci beaucoup

Eléphant du PHP | 140 Messages

07 juin 2006, 13:31

Une question toute bete : c'est quoi cette base ? Je ne l'ai pas chez moi.

ViPHP
ViPHP | 649 Messages

07 juin 2006, 14:11

C'est une table et elle est dans la base "mysql"
Image