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

MySQL Discussion :

Qu'est-ce qu'un utilisateur MySQL dans le cadre d'un site web ?


Sujet :

MySQL

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2020
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2020
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Qu'est-ce qu'un utilisateur MySQL dans le cadre d'un site web ?
    Comme préambule, faite une différence entre utilisateur du site et utilisateur MySQL

    Bonjour les analystes [...],
    Pour créer un utilisateur MySQL, il faut se connecter au serveur avec l'utilisateur MySQL "root" ou un autre utilisateur qui a le droit sur les utilisateurs et faire le travail (CREATE USER [...]). Là n'est pas la question.

    Dans le cadre d'un site web qui a des utilisateurs, je pense bien que ces utilisateurs seront enregistrés dans une table (t_utilisateur, par exemple). De ce fait lorsqu'une personne voudra se connecter dans son compte ou créer un compte, quel peut bien être l'utilisateur MySQL qui va exécuter la requête dans le serveur ? Serais-ce root ou un autre utilisateur?
    Mes questions sont plus dans le cadre de sécurité.
    A partir de ce qui est ci-haut, que peut bien être cette utilisateur MySQL ? Serait-ce le site, ou une fonction du site ? (Par exemple un utilisateur MySQL qui est destiné à authentifier les utilisateurs du site et à enregistrer les nouveaux utilisateurs)

    Si je me pose et je pose toutes ces question c'est parce que ces notions viennent de ma propre conception chose. Je voudrai donc être sûr.
    Et si je ne me suis pas bien expliqué, faites le moi savoir.
    Merci!

  2. #2
    Expert éminent sénior Avatar de Artemus24
    Homme Profil pro
    Agent secret au service du président Ulysses S. Grant !
    Inscrit en
    Février 2011
    Messages
    6 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Agent secret au service du président Ulysses S. Grant !
    Secteur : Finance

    Informations forums :
    Inscription : Février 2011
    Messages : 6 381
    Points : 19 066
    Points
    19 066
    Par défaut
    Salut elYoha17.

    Citation Envoyé par elYoha17
    Là n'est pas la question.
    A priori, je pense que vous n'avez pas compris le rôle joué par le compte que vous devez déclarer dans MySql.

    Pour accéder à MySql, il vous faut un compte. Je pense que vous avez bien assimilé ce fait.
    A ce compte, vous aurez des droits (ou privilèges) que vous pourrez utiliser à votre convenance.

    Le compte "root" (que vous pouvez renommer) est un compte spécial puisqu'il possède tous les privilèges et se nomme "compte administrateur".
    Par "tout privilège", il peut accéder à toutes les bases de données et faire ce qu'il veut.
    Par exemple détruire une base de données, voire donner des privilèges à un autre compte.
    La seule personne qui doit utiliser ce compte est l'administrateur du serveur MySql.

    Comme cet administrateur ne va pas tout gérer dans MySql, il peut déléguer à d'autres comptes, un travail similaire, mais pas identique.
    Dans ce cas, l'administrateur peut créer d'autres comptes MySql ayant des privilèges mais que sur une et une seule base de données.
    On va dire que ces autres comptes sont des chefs de groupes.

    Et ce chef de groupe va lui aussi donner des privilèges à des utilisateurs.
    Ces utilisateurs auront en principe comme privilège :
    --> select
    --> insert
    --> update
    --> delete
    qui sont les opérations classiques de consultations et de modifications ds tables MySql.

    Citation Envoyé par elYoha17
    De ce fait lorsqu'une personne voudra se connecter dans son compte ou créer un compte, quel peut bien être l'utilisateur MySQL qui va exécuter la requête dans le serveur ? Serais-ce root ou un autre utilisateur?
    Ca dépend de l'organisation que vous avez mis en place dans MySql.
    La plupart du temps, il y a un seul compte administrateur "root" et pas de groupes, juste quelques utilisateurs.
    C'est bien le compte "root" qui va devoir créer les compte utilisateurs.

    Citation Envoyé par elYoha17
    Mes questions sont plus dans le cadre de sécurité.
    Tout dépend aussi du nombres d'utilisateurs et de leur diversités.

    Si tous les utilisateurs ont le même profile, à savoir juste de la consultations, ils peuvent tous accéder par le même compte.
    Inversement, si vous devez faire des distinctions, entre tel utilisateur ayant juste le droit de consulter et d'autres ayant le droits de modifier, il faut accéder par des comptes différents.

    Mais il arrive que l'on veut connaitre l'utilisateur qui accède à la base de données.
    Dans ce cas, l'utilisateur qui accède par son compte windows, aura aussi un compte similaire dans MySql.
    C'est lourd à gérer car il faut créer des groupes pour les privilèges et les associer à ces utilisateurs.
    Je pense que votre interrogation se porte sur ce genre de compte.

    C'est dans la connexion application au serveur MySql, que le lien entre le compte windows et le compte utilisateur MySql va se faire.

    @+
    Si vous êtes de mon aide, vous pouvez cliquer sur .
    Mon site : http://www.jcz.fr

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2020
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2020
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Merci d'avoir répondu à ma question.

    Suite à votre réponse
    Supposant que je créer un utilisateur, my_site, qui a les privilèges Select, Insert, Update et Delete.
    Cet utilisateur sera utiliser dans les codes de mon application web pour la connexion au serveur.
    Lorsqu'une personne voudra s'inscrire dans mon site, C'est my_site qui va ajouter les informations dans la table t_utilisateur. (( bien sûr! Cette personne ne saura pas tout ça).

    C'est là la bonne marche à suivre ?

  4. #4
    Expert éminent sénior Avatar de Artemus24
    Homme Profil pro
    Agent secret au service du président Ulysses S. Grant !
    Inscrit en
    Février 2011
    Messages
    6 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Agent secret au service du président Ulysses S. Grant !
    Secteur : Finance

    Informations forums :
    Inscription : Février 2011
    Messages : 6 381
    Points : 19 066
    Points
    19 066
    Par défaut
    Salut elYoha17.

    Le compte mysql "my_site", ayant uniquement les privilèges insert, update, delete et select aura accès à votre base de données sur certaines tables, pas toutes.
    Tous les utilisateurs se connectant avec ce compte pourront faire la même chose sur cette même base de données.

    Si une personne désire s'inscrire dans votre site, et qu'il veut avoir les mêmes privilèges, il devra se connecter en passant par le compte "my_site".
    Disons que le compte mysql "my_site" aura le minimum des privilèges dans votre base de données.
    Il n'aura pas accès à tout mais seulement à ce qui est consultable et modifiable sans danger.

    C'est à vous de définir qui a droit de se connecter, et se qu'il a droit de faire dans votre base de données.
    Par exemple, consulter les salaires des employés ne doit pas être accessible à tout le monde, mais uniquement aux comptables.
    Dans ce cas là, vous devez gérer dans vos applications, à partir de view, ce que chaque compte mysql aura le droit de voir et de faire.
    Pour les comptables, vous devez créer un autre compte mysql ayant les mêmes privilèges mais avec des accès sur d'autres tables.

    Oui, c'est la bonne démarche à faire.

    @+
    Si vous êtes de mon aide, vous pouvez cliquer sur .
    Mon site : http://www.jcz.fr

Discussions similaires

  1. [MySQL] Connexion impossible à la base de données mysql dans le serveur hébergeur du site
    Par aefmaaradji dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 03/12/2010, 21h56
  2. Afficher du contenu MySQL dans plusieurs cadres
    Par VFone dans le forum Langage
    Réponses: 7
    Dernier message: 22/04/2008, 10h53
  3. [MySQL] Utilisation PHP MySQL dans le cadre de l'amélioration d'un logiciel
    Par lince102 dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 01/03/2008, 23h14
  4. Réponses: 3
    Dernier message: 01/12/2006, 16h00
  5. [XSLT] Utilisation de XML avec PHP dans le cadre d'un site
    Par nicolas66 dans le forum Bibliothèques et frameworks
    Réponses: 15
    Dernier message: 06/11/2005, 22h39

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