cs_sema
Messages postés110Date d'inscriptionmardi 22 mars 2005StatutMembreDernière intervention16 juin 2005
-
30 mars 2005 à 15:24
cs_sema
Messages postés110Date d'inscriptionmardi 22 mars 2005StatutMembreDernière intervention16 juin 2005
-
1 avril 2005 à 16:03
bonjour,
j'ai fais un site,
( et je voudrai maintenant mettre en place un systeme d'authentification
pour autoriser certaines personnes à
modifier ou supprimer ou meme rajouter des element dans la bases.
pour cela, j'ai fais plusieurs formulaires: ajouter, supprimer; modifier
qui modifie, supprime et ajoute des elements dans ma base de données access.)
quand je tape tata et tatat il me met l'identification est correcte
quand je tape tata et dgl Erreur : Le compte n'existe pas ou le mot de passe est incorrect
j'ai créer une table tbl_membre
avec les champs pseudo et mdp
-------------------------
pseudo ||| mdp
--------- -------------
toto totot
tata tatat
titi titit
mais j'ai remarqué que rien de tout ça n'est sécurisé
pouvez vous me dire ce que je peux faire pour sécurisé tout ça!!!!
maitredede
Messages postés153Date d'inscriptionvendredi 9 août 2002StatutMembreDernière intervention18 septembre 2009 30 mars 2005 à 16:16
La sécurisation est quelque chose de complexe...
Regarde du coté du protocole HTTPS
Sinon, crypte tes mots de pass en MD5 (fonction md5($string)) dans ta base pour qu'ils soient un minimum sécurisés...
Quand tu concatène tes chaines pour faire tes requètes :
$req="SELECT * FROM talbe WHERE pseudo='".$pseudo."' AND pass='".md5($pass)."'";
N'oublie jamais de mettre la fonction mysql_escape_string() qui te protégera contre les attaques SQL Inejction...
$req="SELECT * FROM talbe WHERE pseudo='".mysql_escape_string($pseudo)."' AND pass='".md5($pass)."'";
cs_sema
Messages postés110Date d'inscriptionmardi 22 mars 2005StatutMembreDernière intervention16 juin 2005 30 mars 2005 à 16:26
oui j'ai cripté avec md5($mdp)
mais le probleme, c'est que ça n'a rien changer, et meme si je mets le bon mot de passe, il me met Erreur : Le compte n'existe pas ou le mot de passe est incorrect
(je crois qu'il compare le mot de passe tapé encrypté et le mot de passe de la base qui n'ai pas encrypter, enfin ché pas trop)
comment je dois faire, j'ai pas trop compris ce que fais mon code
pour info voila mon code:
d'abord le formulaire:
<html>
<head>
<title>Identification</title>
</head>
//requete pour voir si l'identification correspond a un enregistrement
$req= odbc_exec( $cnx, "SELECT * FROM tbl_membre WHERE pseudo_membre='$pseudo' AND mdp_membre= '".md5($mdp)."'");
$result = odbc_fetch_array($req);
//si le membre existe dans la base de donnees alors
if ($result){
echo "L'identification est correcte";
}
//si il n'existe pas
else{
echo "Erreur : Le compte n'existe pas ou le mot de passe est incorrect";
}
odbc_close($cnx); // fermer la connexion
?>
</html>
Un pour tous, tous pour un!!!
Vous n’avez pas trouvé la réponse que vous recherchez ?
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 30 mars 2005 à 16:35
Hello,
lol ben evidemment ds ce cas...
Le principe : ton utilisateur s'enregistre, il tape son mot de passe. TU le cryptes TOUT DE SUITE.
Tu le stockes dans la base tel quel, CRYPTE.
Il revient plus tard pour se logger. IL tape son mot de passe en
clair lui, evidemment. Tu le cryptes tout de suite, puis tu compares ce
mot de passe crypte a celui, crypte aussi, present dans ta base. Ca
correspond, il passe, ca correspond pas, il est rejete.
cs_sema
Messages postés110Date d'inscriptionmardi 22 mars 2005StatutMembreDernière intervention16 juin 2005 30 mars 2005 à 16:45
les utilisateurs ne s'enregistre pas, c'est moi qui met directement dans la base le nom et le mot de passe( pour simplifier je commencerai à mettre pour tous le meme mot de passe)
mon but:
on est 10 personnes, et je voudrai que seulement les 10 personnes ont la possibilité de rajouté des infos(via les formulaires que j'ai fait)
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 30 mars 2005 à 17:10
Tu mets ces mots de passe non crypte dans ta base, ou cryptes ?
A mon avis le probleme est la.
Ils doivent tre cryptes dans ta base, ils doivent etre stockes cryptes.
Comme ca ensuite tu compares le mot de passe crypte rentre par
l'utilisateur (c'est toi qui le crypte a la volee evidemment), a celui
crypte dans ta base.
cs_sema
Messages postés110Date d'inscriptionmardi 22 mars 2005StatutMembreDernière intervention16 juin 2005 30 mars 2005 à 17:16
si si j'ai compris,
mais je disai que pour entrer les pseudos et les mots de passe dans la base, je tape directement dans les champs de ma table.
je tape directement tata et tatat (je ne fais pas de insert)
c'est tout!
il faut que je trouve un moyen pour que les mots de passe soit crypter dans ma base!!!
(ptet créer un formulaire pour que l'admin puisse ajouter des pseudos et mot de passes, et en ajoutant dans la base je metterai md5($mdp) )
si vous avez une autre solution, on si vous savez crypté en md5 sous access, n'hesiter pas
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 20078 30 mars 2005 à 17:47
Salut,
personnellement pour éviter les failles de SQL injection tout en
évitant une gestion complexe des pseudos aux caractères spéciaux, je
les interdit purement et simplement :
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 30 mars 2005 à 18:22
Pi ca a ete fait pour, alors pour pas que les codeurs travaillant sur
l'amelioration de PHP de sentent delaisses...j'utilise au maximum les
fonctions specifiques qu'ils concoctent avec amour ;-)