IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Modules Perl Discussion :

Utilisation du module : Authen::Passphrase


Sujet :

Modules Perl

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 41
    Points : 30
    Points
    30
    Par défaut Utilisation du module : Authen::Passphrase
    Bonjour à tous,

    Quelqu'un a t'il déjà utilisé ce module ?

    Je souhaite vérifier une authentification entre un mot de passe saisi par l'utilisateur et un mot de passe stocké et encrypté en MD5 "apr1" (md5 modifié propre à Apache).
    Il semblerait que ce module en soit capable mais je sais pas vraiment comment il marche ni comment l'utiliser ...
    Un lien vers le module : http://search.cpan.org/~zefram/Authen-Passphrase-0.006/

    Si quelqu'un avait un petit exemple simple, ca serait pas de refus

    Merci beaucoup

  2. #2
    Expert éminent
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Points : 8 586
    Points
    8 586
    Par défaut
    Tu devrais l'utiliser ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    my $clearpwd = <>;
    chomp($clearpwd);
    my $hash = "blablabla";
     
    my $ppr = Authen::Passphrase->from_crypt('$apr1$' . $hash);
     
    say $ppr->match($clearpwd);
    (il est possible que le hash dont tu disposes ait déjà $apr1$ au début, dans ce cas ne le rajoute pas évidemment.

    --
    Jedaï

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 41
    Points : 30
    Points
    30
    Par défaut
    Merci pour ta réponse.

    J'ai maintenant un problème de :
    $apr1$ is unimplemented at xxxx.pl line xx
    Donc soit je m'y prends mal ... soit le support de apr1 n'est pas encore implémenté (vu le numéro de version du module ... 0.006 ).

    Quand on tombe sur cette page : http://kobesearch.cpan.org/htdocs/Au...phrase.pm.html

    On voit clairement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    my %crypt_scheme_handler = (
    	"1"    => [ "Authen::Passphrase::MD5Crypt", 0.003 ],
            [...]
    	"apr1" => sub($) { croak '$apr1$ is unimplemented' },
    Donc je me pose quelques questions quand même ... la gestion des authentifications Apache est si foireuse que ça

    Mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    my $clearpwd = "admin";
    # Apache stocke sous la forme $apr1$.PcYwP7t$D55gLJxh7kJDIi4E19hp4/
    my $hash = ".PcYwP7t$D55gLJxh7kJDIi4E19hp4/";
    my $ppr = Authen::Passphrase->from_crypt('$apr1$'. $hash);
    say $ppr->match($clearpwd);

  4. #4
    Expert éminent
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Points : 8 586
    Points
    8 586
    Par défaut
    Citation Envoyé par yrsone Voir le message
    Donc je me pose quelques questions quand même ... la gestion des authentifications Apache est si foireuse que ça 8
    Apparemment... Oui. J'ai regardé un peu et j'ai du mal à trouver une description claire et simplement implémentable de l'algorithme qui semble consister en 1000 application de MD5 avec le sel rajouté un peu partout. Le plus simple est peut-être d'utiliser htpasswd si tu peux.

    --
    Jedaï

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 41
    Points : 30
    Points
    30
    Par défaut
    Le problème c'est qu'en utilisant la commande htpasswd d'Apache, lorsque l'on veut modifier le pass d'un compte, celle-ci ne demande pas l'ancien mot de passe ... donc on peut modifier le compte de son voisin dès que l'on connait son login.

    Je souhaite faire un script qui demande aux utilisateurs d'entrer leur ancien mot de passe (et de le comparer avec le $apr1$ stocké) avant de balancer la commande htpasswd pour le modifier ...

Discussions similaires

  1. Decompression d'un fichier sans utiliser les modules du CPAN
    Par choubiroute dans le forum Modules
    Réponses: 6
    Dernier message: 10/03/2006, 15h20
  2. [VB]utilisation des modules en vb
    Par zidenne dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 24/01/2006, 12h19
  3. erreur lorsque j'utilise le module session
    Par vbcasimir dans le forum Modules
    Réponses: 13
    Dernier message: 14/10/2005, 14h41
  4. utilisation du module WWW::Hotmail
    Par mouette_fstt dans le forum Modules
    Réponses: 2
    Dernier message: 22/07/2005, 17h58
  5. [web] Probleme de passe de variable qd j utilise un module TK
    Par Slippers dans le forum Interfaces Graphiques
    Réponses: 5
    Dernier message: 19/04/2005, 18h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo