modifier mdp htaccess

Eléphant du PHP | 335 Messages

23 août 2005, 09:05

Bonjour,

Alors j'ai essayé avec le fonction indiqué ds un post précédent
function htpasswd($pass) 
{ 
     $pass = crypt(trim($pass),base64_encode(CRYPT_STD_DES)); 
     return $pass; 
} 
Et bien lorsque je veux me connecté ca ne marche toujours pas!!

Eléphant du PHP | 335 Messages

23 août 2005, 09:30

voila sur quoi je suis tombé en faisant mes recherches:

Crypt : algorithme le plus utilisé, basé sur le DES. Passe partout sous UNIX, mais Apache pour Windows ou TPF ne l'acceptera pas.

MD5 : algorithme à base de MD5 reconnu uniquement par les serveurs Apache, quelle que soit la plate-forme utilisée.

Eléphant du PHP | 335 Messages

23 août 2005, 12:04

personne ne voit de solution a mon probleme?...

Mammouth du PHP | 1885 Messages

23 août 2005, 17:57

Bonjour,

Dans le manuel sous la commande "htpasswd":
htpasswd encrypts passwords using either a version of MD5
modified for Apache, or the system's crypt() routine. Files
managed by htpasswd may contain both types of passwords;
some user records may have MD5-encrypted passwords while
others in the same file may have passwords encrypted with
crypt().
Donc il faudrait que tu nous montres comment tu procèdes et quel est le résultat et ce, pour le fichier .htaccess et .htpasswd.
Le problème ne vient probablement pas de l'encryption du mot de passe mais peut-être de la manière dont il est utilisé ou enregistré. Et si tu n'es pas sous Apache, alors là c'est peine perdu...
La programmation est l'expression de la poésie d'un programmeur
Génération PHP

Eléphant du PHP | 335 Messages

23 août 2005, 18:11

ba c'est tout simple!

voici mon htaccess:
AuthUserFile d:/wwwsiteintranet/web_arnage/admin/.htpass
AuthGroupFile /dev/null
AuthName "ARNIS01"
AuthType Basic
<limit GET POST>
require valid-user
</limit>

et voici mon htpass:
webmaster:"ici je colle le mot de passe crypter obtenu avec le script de phpfreaks"

lorsque je tape webmaster et le mot de passe, il ne se passe rien et au bout de 3 erreurs, j'ai une page d'erreur qui s'affiche!

merci pour l'aide

ViPHP
ViPHP | 1380 Messages

23 août 2005, 18:22

Le format pour un htaccess est user:mot_de_passe_crypte

Essaye ceci:
$user = 'kangourou';
$pass = 'australie';

echo '<h4>crypt --> '.$user.':'.crypt($pass).'</h4>';
echo '<h4>mix --> '.$user.':'.crypt($pass, base64_encode(CRYPT_STD_DES)).'</h4>';
Les deux formats devraient marcher. Il suffit d'utiliser les fonctions de fichiers pour ouvrir le fichier htaccess et y rajouter (ou modifier les mdp). Attention, cette dernière partie demande un peu de soin et de connaissance des fonctions PHP.

Piste: si tu n'aimes pas de jouer avec des pointeurs de fichiers plats, vois du côté de file() ou autres...
ripat

Mammouth du PHP | 1885 Messages

23 août 2005, 18:35

Bonjour,

Après recherche, la fonction crypt() sans paramètre devrait faire l'affaire et tu devrais obtenir un résultat de ce genre:

Code : Tout sélectionner

$1$Ub/.NG5.$uEbYz4DLwcBZF7BKHAb9E.
Mais aussi, si tu es en local, il faut t'autoriser à utiliser les fichiers .htaccess et l'authentification dans le fichier httpd.conf:
Directive AllowOverride
Lorsque le serveur trouve un fichier .htaccess (comme spécifié par AccessFileName) il doit savoir quelles directives declarées dans ce fichier peuvent outrepasser les droits fixés par des directives précédentes.
Les types de directives peuvent être parmi ces groupes de directives :

AuthConfig :arrow: Autorise l'usage de la directive Authorization (AuthDBMGroupFile, AuthDBMUserFile, AuthGroupFile, AuthName, AuthType, AuthUserFile, Require, etc.).
La programmation est l'expression de la poésie d'un programmeur
Génération PHP

Eléphanteau du PHP | 14 Messages

23 août 2005, 19:06


Eléphant du PHP | 335 Messages

25 août 2005, 15:12

J'ai essayé vos différentes méthodes et ca ne fonctionne toujours pas

Je n'arrive pas a comprendre pourquoi!!

Help

Eléphant du PHP | 335 Messages

25 août 2005, 15:24

J'a créer un htpasswd avec la comamnde Apache et ensuite j'ai comparer ce résultat avec ce que le script génére
Et je n'obtiens pas la meme chose!!

Comment faire pour obtenir le bon mdp crypté?

Eléphant du PHP | 335 Messages

25 août 2005, 16:35

Apres de longues recherches, je touche presque au but!

J'ai trouvé ce site http://www.serveurperso.com/?page=sources
ou on peut lire :
Voici un script qui devait générer des lignes du htpasswd qui contiennent les noms d'utilisateurs et les mots de passe pour Apache. Mais ça ne marche pas ! La fonction "crypt" de PHP n'est pas compatible avec le cryptage utilisé dans les htpasswd... Utiliser le script du HowTo...
Lorsque j'utilise le script sur le site (http://www.serveurperso.com/sources/pas ... ssword.php), il me crypte comme il faut le mot de passe et lorsque je le copie dans mon htpasswd tout ce passe bien lors de la connexion.

Alors j'ai décidé de récupérer le script (http://www.serveurperso.com/sources/pas ... %201.0.zip) et lorsque je l'execute, il me sors a chaque fois "Mot de passe invalide!" alors que j'ai entré les meme user et mdp que sur le site!!!!

Je ne comprends pas d'ou vient l'erreur.

Qqn peut m'aider??

Merci

Mammouth du PHP | 19672 Messages

25 août 2005, 16:41

As-tu songé à une autre méthode : mot de passe et login en base de données, page index avec script d'identification mais sans utiliser l'authentification http ?
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 335 Messages

25 août 2005, 16:42

Ca y est, j'ai réussi.

Ca marche impec! Enfin!

Merci a PHP et a Albat pour leur aide.

Merci également a Cyrano! lol (meme les meilleurs peuvent se tromper!)
Excuse moi d'insister Lourdement, mais le cryptage d'un mot de passe dans un .htaccess fera en sorte que les authentifications http ne fonctionneront pas parce que la procédure ne procède pas à un cryptage ou à un décryptage quelconque, donc il n'y aura pas correspondance.

Il faut te l'expliquer en quelle langue pour que tu captes la lumière ? :evil:

Mammouth du PHP | 19672 Messages

25 août 2005, 16:45

Ben depuis le temps que je te vois tourner en rond sur ce problème, ça fait longtemps que j'aurais bazardé le système pour contourner autrement avec une autre méthode, c'est pour ça que je t'ai posé la dernière question.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 335 Messages

25 août 2005, 16:46

Vu que j'ai réussi, c'est bien la preuve que je ne tournais pas en rond!!