|
VV 41
| Posté : 03-07-2003 12:11
Salut !
Je voudrais pouvoir gèrer les droits des utilisateurs de mon site sur la BD via php (création d'utilisateurs, GRANT, etc...).
Pour cela je veux pouvoir executer des requetes sur la base mysql (tables user, table_priv, etc..).
Le pb c'est que je n'ai pas très bien compris comment ça marche (j'ai bien la doc de mysql mais c'est pas tres bien expliqué).
à qoui correspond la valeur des champs de type "select_priv" ou autres "qque chose_priv" ?
Par exemple si j'ai select_priv='Y' pour un user, est ce que ça veut dire qu'il a le droit de faire des select comme il veut, ou est ce que ça veut dire que son droit à faire des select est défini par les autres tables (table_priv, column_priv) ?
Bref vous voyez je suis pas sorti de l'auberge...
Si vous pouviez m'expliquer comment tout ça marche ou m'indiquer ou je peux trouver des explications CLAIRES (et abordables pour un débutant) ça me serait d'un très grand secours ! (là je suis vraiment dans la m....)
Merci d'avance ! |  Profil
|
|
developpeur 24581
| Posté : 03-07-2003 14:02
tu affronte la gestion des droits de mysql !
C'est pas simple, mais tu est bien parti. Les droits sont des poupées russes :
user, ... table_priv, column_priv
si userX à le droit de select sur un base, table_priv peut dire que userX ne peut faire un select que sur la table ZZZZ et column_priv que sur la (ou les) colonnes WWW
Test, ya que cela de vrai !
|  Profil E-mail www
|
|
VV 41
| Posté : 03-07-2003 14:21
OK merci !
Donc, si j'ai bien compris, ça marche + ou - comme ça :
-Si 1 utilisateur X a le champ select_priv='N' ds la table user, il n'a pas le droit de faire des select.
-Si X a select_priv='Y' ds user, et rien le concernant dans tab_priv, il a le droit de faire ts les select qu'il veut
-Si X a select_priv='Y' ds user, et des infos ds tab_priv il peut faire des selects selon les droits définis ds tab_priv.
-Idem pour column_priv.
Est-ce que ça marche comme ça ou alors je fais complétement fausse route ?
Autre question : je tourne en local et pour faire des requetes via php, ça marche tt le temps (la connexion est authorisée chaque fois) meme si je mets un login et un mot de passe bidons (qui n'éxistent pas ds la table users)
Comment ça se fait ?
pourtant j'ai supprimé l'utilisateur root de la table user.
En tout cas ça me pose un pb parce que du coup mes essais ne valent rien !
Merci de votre aide |  Profil
|
|
VV 41
| Posté : 03-07-2003 17:06
Aidez moi svp !!!... |  Profil
|
|
developpeur 24581
| Posté : 03-07-2003 17:30
Citation : "03-07-2003 14:21, VV a écrit :
OK merci !
Donc, si j'ai bien compris, ça marche + ou - comme ça :
-Si 1 utilisateur X a le champ select_priv='N' ds la table user, il n'a pas le droit de faire des select.
-Si X a select_priv='Y' ds user, et rien le concernant dans tab_priv, il a le droit de faire ts les select qu'il veut
-Si X a select_priv='Y' ds user, et des infos ds tab_priv il peut faire des selects selon les droits définis ds tab_priv.
-Idem pour column_priv.
Est-ce que ça marche comme ça ou alors je fais complétement fausse route ?
==> c'est bien cela
Autre question : je tourne en local et pour faire des requetes via php, ça marche tt le temps (la connexion est authorisée chaque fois) meme si je mets un login et un mot de passe bidons (qui n'éxistent pas ds la table users)
Comment ça se fait ?
pourtant j'ai supprimé l'utilisateur root de la table user.
En tout cas ça me pose un pb parce que du coup mes essais ne valent rien !
==> tu a recharger MySQL ? / TOUTE MODIF sur la base Mysql nécessite un redemarrage de Mysql pour être prise en compte !
|  Profil E-mail www
|
|
VV 41
| Posté : 03-07-2003 17:40
Oui oui, jai bien rechargé mysql.
ça vient pas de ça, ça fait qque temps que je me suis aperçu de ce pb, mysql a été rechagé plsrs dizaines de fois depuis...
Y'a pas qque chose à regler qque part pour rendre le login et le mot de passe obligatoires ? (même si je mets aucun login ni mot de passe ça se connecte quand-même) |  Profil
|
|
developpeur 24581
| Posté : 04-07-2003 13:26
ya une cou..... dans tes tables à mon avis
|  Profil E-mail www
|
|