Hash md5 sur champs mot de passe
mikl86
-
blux Messages postés 27121 Date d'inscription Statut Modérateur Dernière intervention -
blux Messages postés 27121 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
Ma base de données enregistre les mots de passe utilisateur en visible pour le moment.
J''aimerai qu'il soit hashé automatiquement lors de l'insertion.
J'imagine pour cela qu'il faut modifier la structure de ma ligne "pass" ?
J'ai essayé ca :
Qui fonctionne pour les donnée déjà entrées dans la base.
Mais si j'ajoute une insertion, le mot de passe n'est pas hashé automatique.
Comment procéder svp ?
Ma base de données enregistre les mots de passe utilisateur en visible pour le moment.
J''aimerai qu'il soit hashé automatiquement lors de l'insertion.
J'imagine pour cela qu'il faut modifier la structure de ma ligne "pass" ?
J'ai essayé ca :
UPDATE client SET pass=MD5(client)
Qui fonctionne pour les donnée déjà entrées dans la base.
Mais si j'ajoute une insertion, le mot de passe n'est pas hashé automatique.
Comment procéder svp ?
A voir également:
- Mot de passe md5
- Trousseau mot de passe iphone - Guide
- Mot de passe - Guide
- Mot de passe administrateur - Guide
- Mot de passe bios perdu - Guide
- Voir mot de passe wifi android - Guide
3 réponses
Salut,
c'est à toi de le prévoir, en fonction de ta manière d'insérer les nouvelles lignes.
Ou utiliser un trigger...
c'est à toi de le prévoir, en fonction de ta manière d'insérer les nouvelles lignes.
Ou utiliser un trigger...
Bonjour
Car avec ce que tu as mis, tu as remplacé leurs mots de passe par leur nom - ou en tout cas ce qu'il y avait dans le champ client.
Pour que ce soit appliqué automatiquement à la création de nouveaux clients, il suffit d'appliquer la fonction md5 à la valeur affectée au champ mot de passe dans la requête d'insertion. C'est normalement très facile, si tu sais où se trouve cette requête dans le code.
UPDATE client SET pass=MD5(client) ?Pour les clients déjà enregistrés, ça aurait plutôt dû être :
UPDATE client SET pass=MD5(pass)
Car avec ce que tu as mis, tu as remplacé leurs mots de passe par leur nom - ou en tout cas ce qu'il y avait dans le champ client.
Pour que ce soit appliqué automatiquement à la création de nouveaux clients, il suffit d'appliquer la fonction md5 à la valeur affectée au champ mot de passe dans la requête d'insertion. C'est normalement très facile, si tu sais où se trouve cette requête dans le code.
Merci pour vos réponses.
ahhh effectivement, le père, j'ai fais une boulette !
Par contre ce que je ne comprends pas , c est que dans un tuto j'ai vu ca
La ligne 4 configure la ligne "passe" en MD5.
Je me dis que si il est possible de l'indiquer lors de la création de la table, il est possible de modifier directement la structure non ?
ahhh effectivement, le père, j'ai fais une boulette !
Par contre ce que je ne comprends pas , c est que dans un tuto j'ai vu ca
1. CREATE TABLE membre ( 2. id int(11) NOT NULL auto_increment, 3. login text NOT NULL, 4. pass_md5 text NOT NULL, 5. PRIMARY KEY (id) 6. ) TYPE=MyISAM;
La ligne 4 configure la ligne "passe" en MD5.
Je me dis que si il est possible de l'indiquer lors de la création de la table, il est possible de modifier directement la structure non ?
mais à partir d'une colonne déja existance contrairement à mon exemple ou il s'agit d'une création de table.
Non, ce que tu as donné n'a rien à voir avec MD5, c'est juste que l'on a appelé une colonne pass_md5.
En SQL on pourrait faire un truc comme ça :
INSERT INTO Table(login,pass_md5 VALUES($login,md5($password))...
où $login et $password sont deux variables récupérées de la saisie utilisateur.
Non, ce que tu as donné n'a rien à voir avec MD5, c'est juste que l'on a appelé une colonne pass_md5.
En SQL on pourrait faire un truc comme ça :
INSERT INTO Table(login,pass_md5 VALUES($login,md5($password))...
où $login et $password sont deux variables récupérées de la saisie utilisateur.