Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2162 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  comparaison de mot de passe selon .htpasswd

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

comparaison de mot de passe selon .htpasswd

n°1343881
titouille
Posté le 11-04-2006 à 10:56:37  profilanswer
 

Bonjour à tous !!!
 
Voilà... j'aimerai mettre en place un système de session qui utilise les mots de passe cryptés dans un fichier .htpasswd. c'est une obligation de passer par les login/pwd du .htpasswd, car d'autres processus utilisent également ce fichier pour stocker et effacer des utilisateurs.
 
Donc à priori, j'aimerai faire "semblant" d'avoir un .htaccess à la racine. Mais en réalité, je n'aurai que le htpasswd, qui se remplit et se désempli d'utilisateurs au fil du temps. Et c'est php qui s'occupe de lire le contenu du fichier pour contrôler si l'utilisateur y est présent, et le cas échéant le redirige vers une partie privée gérée par session.
 
Le problème, c'est que je n'arrive pas à faire une comparaison correcte via php. J'ai pu lire qu'Apache utilisait des process différents selon que la machine est hébergée sur un os windows ou linux.
 
Indépendamment de cette différence d'os (car dans mon cas, le serveur sera un serveur linux, apparemment), existerait-il un moyen de pouvoir crypter correctement le mot de passe entré par l'utilisateur pour pouvoir ensuite le comparer au mot de passe enregistré dans le fichier .htpasswd ??
 
Et ceci sans pour autant devoir nécessiter tous les privilèges serveur... :)
 
 
D'avance merci pour vos suggestions.
 
a++

mood
Publicité
Posté le 11-04-2006 à 10:56:37  profilanswer
 

n°1343895
bixibu
Ca ... c'est fait!
Posté le 11-04-2006 à 11:08:59  profilanswer
 

Salut ;)
 
Je vais peut etre repondre a coté mais un :
 

Code :
  1. if ( md5($password) == $passwordcrypte ) {


 
ne suffit il pas? $password etant le password que rentre l'utilisateur (non crypté à l'origine) qu'on crypte en md5 et qu'on compare au password du htpasswd qui lui est crypté en md5 .
 
:hello:

n°1343924
titouille
Posté le 11-04-2006 à 11:28:35  profilanswer
 

Hello !!
 
Merci pour cette suggestion, mais après mes lectures, je me doutais que ça n'allait pas fonctionner...  
 
En fait, voilà le résultat du test :
 
la première ligne correspond au cryptage en md5, la seconde ligne correspond aux infos qui sont dans le fichier .htpasswd, le mot de passe à été généré sur http://cobalt.golden.net/generator/index.cgi
 

Code :
  1. c6031e0108a59a4879f8a0135d22273d
  2. Array ( [0] => Array ( [user] => titouille [pass] => 48SV/chV65LzM ) )


 
 
Et avec crypt, c'est encore pire, il me balance à chaque fois un mot de passe différent, il doit être basé sur un timestamp.
 
Je ne sais pas exactement comment il est crypté, mais ce n'est en tout cas pas un md5 standard... il doit y avoir des finesses...
 
Mais dans le même ordre d'idée, serait-il possible d'exécuter un script perl ou un cgi via php pour récupérer le mot de passe généré par le script et pouvoir faire la comparaison ?? Bon, ça devient assez tordu, là...

n°1343976
titouille
Posté le 11-04-2006 à 12:09:08  profilanswer
 

Raah, c'est l'enfer...
 
Je me suis dit... peut-être que je peux faire le contraire... faire l'authentification via apache, et par la suite en php, récupérer les infos d'authentification.
Seulement apache me retourne le password en clair, et si je tente de faire une comparaison en le cryptant, à nouveau, je me retrouve avec des mots de passe qui ne correspondent pas...

n°1344029
bixibu
Ca ... c'est fait!
Posté le 11-04-2006 à 13:07:53  profilanswer
 

Re-salut :)
 
Pourquoi tu t'embete avec le générateur que tu as indiqué si il ne délivre pas de bon mot de passe cryptés?
 
Tu n'as qua creer un formulaire de saisie login / mdp
Tu crée un fichier comme tu veut htpassword ou maman.papa et tu y écris :
$_POST['login'].' : '.md5($_POST['password']
 
Apres tu pourra faire toutes les comparaisons que tu veut avec la methode que j'ai mis au dessus.
 
Bon, ya peut etre quelque chose qui ma échappé car ce que je te propose tu y as sans doute pensé.
 
Bonne chance en tous cas.

n°1345811
titouille
Posté le 13-04-2006 à 10:59:39  profilanswer
 

Hello !!
 
Ben en fait, le générateur me délivre un login et mot de passe pour un utilisateur qui a payé pour les avoir. Donc je ne peux pas passer outre ces infos et créer les miennes... je dois à tout prix être en mesure de pouvoir comparer les infos insérées par l'utilisateur et les infos renvoyée par le générateur. Mais il semblerai que ça fonctionne. Je n'utilisais pas la méthode "crypt" de la bonne manière. Je lui passait seulement un mot de passe en clair, alors qu'il faut passer le mot de passe en clair ainsi que le mot de passe crypté sur le serveur, et comparer le tout au mot de passe crypté
 

Code :
  1. if( crypt( $_POST['pwd'], $cryptedPwdInDB ) == $cryptedPwdInDB )
  2. ...


 
Mais au final, j'ai réussi à me débrouiller sans l'utilisation de htpasswd. J'ai créé ma propre classe de gestion pour la récupération des données générateur et je peux directement les enregistrer ou je veux (en DB plutôt que dans un htpasswd).
 
Merci pour les tentatives en tout cas ;)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  comparaison de mot de passe selon .htpasswd

 

Sujets relatifs
Rexec et Mot de Passeniveau securité mot de passe
mot de passeaddslashes lors de comparaison
Probleme de cryptage de mot de passecryptage des mots de passe pour oracle
Comparaison de valeur dans un arraylist[EXCEL] fonction comparaison entre cellule et tableau
[Résolu][EXCEL] Recopie d'un fichier à l'autre par comparaisonMot de passe sur dossier
Plus de sujets relatifs à : comparaison de mot de passe selon .htpasswd


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)