IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

EDI, CMS, Outils, Scripts et API PHP Discussion :

Paramétrage en environnement multi-utilisateurs


Sujet :

EDI, CMS, Outils, Scripts et API PHP

  1. #1
    Membre confirmé Avatar de Christophe Charron
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    920
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 920
    Points : 606
    Points
    606
    Par défaut Paramétrage en environnement multi-utilisateurs
    Bonjour,
    je voudrai partager l'accès à phpmyadmin à certains utilisateurs et avec certains droits.
    Je garderai l'exclusivité de la création des bases et a priori également l'exclusivité de la gestion des privilèges.
    Ils auront accès via phpmyadmin uniquement à leur base.

    Constatant qu'il n'y avait pas de .htaccess dans le répertoire phpmyadmin, j'en ai déduis en lisant dans http://www.phpmyadmin.net/pma_locali...tation.fr.html particulièrement la faq 135 que je devais être en mode authentification http mais je n'en suis pas sur car je ne sais pas ou chercher
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    RewriteEngine On
    RewriteRule .* - ['E=REMOTE_USER:%{HTTP:Authorization},L']
    Mais comme, à chque fois que je cree un utilisateur, je peux l'utiliser pour me connecter à phpmyadmin, je dois être sur la bonne voie.
    Par contre et mon gros souci est ici, je n'arrive pas à limiter à une seule base son accès et sa vision. Bien que ne lui ayant pas, a priori, donné de droit grant, il peut même aller jouer avec ceux du superutilisateur-gestionnaire !!
    Cette gestion des utilisateurs peut-elle donc se faire via phpmyadmin ou doit-elle se faire à travers des requete hors de phpmuadmin ?
    D'avance, merci pour vos suggestions.
    Cordialement,
    Christophe Charron

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    Pourquoi y aurait-il un fichier htaccess pour gérer les utilisateurs ? Toute l'utilité de phpMyAdmin est aussi d'être multi-utilisateur et de gérer ses accès (s'il est configuré en ce sens - authentification http ou cookie et non config) sur les tables "système" de MySQL. La première chose à faire est de configurer phpMyAdmin convenablement : soit manuellement (fichier config.inc.php) soit à l'aide du script prévu depuis peu (à noter qu'il faudra créer spécialement un utilisateur MySQL pour phpMyAdmin avec les droits en lecture sur les tables adéquates pour une configuration multi-utilisateurs : se reporter au manuel de phpMyAdmin ou à un tutoriel).

    En ce qui concerne les accès aux bases par rapport à chaque utilisateur : phpMyAdmin ne listera pas les bases sur lesquelles l'utilisateur n'a aucun droit (mis à part, encore une fois, les bases d'information - comme information_schema - que vous pouvez éventuellement cacher). Tout est donc relatif à la création initiale de vos utilisateurs MySQL et des droits qui leurs sont attribués.

  3. #3
    Membre confirmé Avatar de Christophe Charron
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    920
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 920
    Points : 606
    Points
    606
    Par défaut
    Citation Envoyé par julp Voir le message
    Pourquoi y aurait-il un fichier htaccess pour gérer les utilisateurs ? Toute l'utilité de phpMyAdmin est aussi d'être multi-utilisateur et de gérer ses accès (s'il est configuré en ce sens - authentification http ou cookie et non config) sur les tables "système" de MySQL. La première chose à faire est de configurer phpMyAdmin convenablement : soit manuellement (fichier config.inc.php) soit à l'aide du script prévu depuis peu (à noter qu'il faudra créer spécialement un utilisateur MySQL pour phpMyAdmin avec les droits en lecture sur les tables adéquates pour une configuration multi-utilisateurs : se reporter au manuel de phpMyAdmin ou à un tutoriel).
    Je suis tout à fait d'accord. Sauf que j'arrive après la bataille et que phpmyadmin est déjà installé.
    Je viens de découvrir que c'était dans le config.inc.php qu'était indiqué le mode d'authentification
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    /* Server localhost (http) [1] */
    $i++;
    $cfg['Servers'][$i]['host'] = 'localhost';
    $cfg['Servers'][$i]['extension'] = 'mysql';
    $cfg['Servers'][$i]['connect_type'] = 'tcp';
    $cfg['Servers'][$i]['compress'] = false;
    $cfg['Servers'][$i]['auth_type'] = 'http';
    Désolé donc d'avoir posé une question stupide ...
    Citation Envoyé par julp Voir le message
    En ce qui concerne les accès aux bases par rapport à chaque utilisateur : phpMyAdmin ne listera pas les bases sur lesquelles l'utilisateur n'a aucun droit (mis à part, encore une fois, les bases d'information - comme information_schema - que vous pouvez éventuellement cacher). Tout est donc relatif à la création initiale de vos utilisateurs MySQL et des droits qui leurs sont attribués.
    Je n'arrive pas à faire le lien entre ce que vous indiquez dans votre faq et les interdictions propres à chaque utilisateur. En fait, je vais poser la question différement : faut-il explicitement enlever les droits à un nouvel utilisateur pour une base de données déjà créée ?
    Car je viens de me connecter en super-utilisateur, je viens de créer un nouvel utilisateur, en ne lui conservant comme droits que select update delete.
    Je viens d'explicitement lui attribuer des droits restreints sur une seule base.

    Je me suis déconnecté.
    Je me suis reconnecté avec ce nouvel utilisateur et je vois toutes les bases et je peux droper une table d'une base sur laquelle, a priori, je pensais qu'il n'avait aucun droit puisque je ne lui en ai pas explicitement donné.
    Donc il y a quelque chose que je fais mal, mais je ne vois pas où !!
    Cordialement,
    Christophe Charron

  4. #4
    Membre confirmé Avatar de Christophe Charron
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    920
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 920
    Points : 606
    Points
    606
    Par défaut
    Mea culpae, mea maxima culpae
    un petit message d'erreur m'avait tout à fait échappé !!!!
    Je n'ai pas dropé la table comme je l'affirmais.

    Toutes mes excuses

    Ne me reste qu'à arriver, à ne montrer, à chaque utilisateur, uniquement "ses" bases (et je ne comprends comment votre faq le fait, utilisateur par utilisateur)
    Cordialement,
    Christophe Charron

  5. #5
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    Le lien indiqué n'intervient nullement dans cette gestion : c'est une méthode pour cacher les bases visibles de tous (essentiellement), rien de plus. Vous avez certainement attribué des droits globaux sur les bases à vos utilisateurs puisque c'est sur les droits MySQL que s'appuie phpMyAdmin. D'ailleurs, si vous arrivez à effectuer des opérations sur une base où vous n'êtes pas censé pouvoir le faire il y a vraiment un problème (phpMyAdmin ou non) : droits incorrects, droits qui n'ont pas été rechargés, etc.

    A noter, qu'il y a potentiellement un bug au niveau d'un changement d'utilisateur avec phpMyAdmin : la frame de gauche, n'est pour moi, jamais réactualisée (donc j'ai la liste des bases de l'utilisateur précédent).

  6. #6
    Membre confirmé Avatar de Christophe Charron
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    920
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 920
    Points : 606
    Points
    606
    Par défaut
    En supprimant des utilisateurs et en les recréant, j'arrive presque à mes fins.
    Il me reste deux problèmes :
    l'accès à une base actuellement vide reste possible bien qu'aucun utilisateur n'y soit rattaché. Vous me direz, ils ne pourraient pas en faire grand chose puisqu'ils n'ont pas de possibilité de grant ... mais ça fait désordre quand même dans la liste.
    Et surtout, la visibilité de information_schema. La cacher dans le config.inc.php est une solution mais un et hop, on la voit !!
    Il n'y a pas de solution pour qu'elle ne soit vraiment pas accessible ?
    Cordialement,
    Christophe Charron

Discussions similaires

  1. Réponses: 16
    Dernier message: 23/06/2008, 11h54
  2. base repliquee et environnement multi-utilisateur
    Par caro2552 dans le forum Sécurité
    Réponses: 7
    Dernier message: 16/05/2008, 22h16
  3. Réponses: 10
    Dernier message: 26/10/2007, 13h55
  4. environnement multi-utilisateurs.(Tables verrouillées)
    Par bsiouakam dans le forum Access
    Réponses: 2
    Dernier message: 24/09/2006, 12h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo