Ajouter un utilisateur

Eléphant du PHP | 440 Messages

14 févr. 2014, 15:08

Bonjour à tous,

Env: LAMP (debian +php5+phpmyadmin+mysql)

Je voudrais créer un utilisateur mysql qui auras accès uniquement à la base de donnée 3-4 table de ma base "intranet". (depuis un autre serveur)

(J'ai deja modifier le fichier my.ini pour autoriser les connexion depuis l'exterieur)

Est-ce possible d'y arriver depuis phpmyadmin?
Pourriez-vous m'inguiller dans la démarche.

Merci d'avance

guigui69

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

14 févr. 2014, 15:54

Salut,

Pour la création de l'utilisateur oui. (Pense a bien gérer le "host" d'origine de la connexion).
Pour réduire l'accès à une base de données précise non il faudra passer par des grantsg
Par contre je ne sais pas si réduire a une table ou deux est possible avec mysql il faut voir dans la doc.

@+
Il en faut peu pour être heureux ......

Eléphant du PHP | 440 Messages

15 févr. 2014, 01:00

Salut,

Pour la création de l'utilisateur oui. (Pense a bien gérer le "host" d'origine de la connexion).
Pour réduire l'accès à une base de données précise non il faudra passer par des grantsg
Par contre je ne sais pas si réduire a une table ou eux est possible avec mysql il faut voir dans la doc.

@+
Bonsoir
Pour la création de l'utilisateur oui. (Pense a bien gérer le "host" d'origine de la connexion). ==> Host origine, tu parles de la machine qui va se connecter a mon serveur mysql.

Pour réduire l'accès à une base de données précise non il faudra passer par des grantsg ==> D'accord

guigui69

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

16 févr. 2014, 01:00

oui, lorsque tu créer un utilisateur indique l'origine des connexions (localhost, une ip, un rang d'ip ou autre, tu peux indiquer tout le monde avec un %).
il faut que tu lise la doc à ce sujet tu y trouveras pas mal d'info utile.

j'ai fouillé un peu la démo de pma et contrairement à mes souvenir tu peux ajouter des droits sur les bases / tables et même colonne.
j'ai trouvé dans la page d'édition d'utilisateur (en bas).

Je pense que la documentation de mysql devrait pas mal t'aider pour le faire par toi même si tu n'y arrive pas simplement avec pma.

par exemple ajout d'utilisateur

@+
Il en faut peu pour être heureux ......

Eléphant du PHP | 440 Messages

17 févr. 2014, 18:30

Bonsoir,

merci pour ta réponse.

J'ai créé mon compte "exterieur" autorise que la table "intranet"(SELECT seulement) et je voulais autoriser certaine table (4 tables au total en select).

J'ai pu rajouter 1 table mais les suivant j'ai cette errreur: "#1133 - Can't find any matching row in the user table "
sql1.JPG
sql2.JPG
Quel est mon erreur ?

guigui69
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

17 févr. 2014, 19:16

la comme ça je vois pas trop.

as tu essayé la seconde table seule ? (tu vire la ère et met celle ci à la place).

@+
Il en faut peu pour être heureux ......

Eléphant du PHP | 440 Messages

20 févr. 2014, 14:07

Je peux même pas supprimer, j'ai le meme message erreur:

#1133 - Can't find any matching row in the user table

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

20 févr. 2014, 19:36

ouch, t'as du faire un truc qui va pas :)

regarde les requêtes SQL à faire (grant) tu comprendra le système et pourras le faire à la main (même si les outils c'est pratique parfois).


@+
Il en faut peu pour être heureux ......

Eléphant du PHP | 440 Messages

23 févr. 2014, 19:49

Je pense que c'est bon j'ai fait FLUSH PRIVILEGES et cela semble ok.

Je fait un test et je repond.


PS: Une question est-il possible de configurer automatiquement le champs d'une base de donnée avec la date et l'heure de l'insertion (un peu comme auto incrementation)

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

24 févr. 2014, 14:11

Pas de date par défaut en utilisant le default (avec mysql).
Tu peux le faire avec un trigger before insert (si le champs est null tu met la date par défaut)

@+
Il en faut peu pour être heureux ......