Module d'authentification


#1

Bonjour,

je recherche un module simple, mais extensible, d’authentification.
Sur le wiki j’en trouve 4. Difficile de faire un choix lorsque l’on
débute.

http://wiki.rubyonrails.com/rails/pages/LoginGenerator
http://www.rails-engines.org/login_engine
http://wiki.rubyonrails.com/rails/pages/SaltedHashLoginGenerator
http://wiki.rubyonrails.org/rails/pages/Acts_as_authenticated

pour l’instant mon besoin est de stocker les pass cryptés. Un simple
script
Ruby
remplit une première fois la table users. Lors de la connexion, le
module
doit
crypter le pass rentré par l’utilisateur et le comparer avec celui
stocké
dans la base.
J’envisage par la suite une gestion des utilisateurs (suppression,
ajout,
modif) voir
un envoie d’un nouveau mot de passe par mail.

Quel module semble devenir la norme et pourrait correspondre à mon
besoin ?
Merci.


#2

On 5/23/06, Frédéric Logier removed_email_address@domain.invalid wrote:

je recherche un module simple, mais extensible, d’authentification.
Sur le wiki j’en trouve 4. Difficile de faire un choix lorsque l’on
débute.

http://wiki.rubyonrails.com/rails/pages/LoginGenerator
http://www.rails-engines.org/login_engine
http://wiki.rubyonrails.com/rails/pages/SaltedHashLoginGenerator
http://wiki.rubyonrails.org/rails/pages/Acts_as_authenticated

Des réponses rapides sur irc indiquent que Acts_as_authenticated est un
plugin,
donc plus facile à intégrer et plus propre qu’un générateur de code.


#3

Je te fais part e mon expérience.

J’ai passé 1 semaine à tester les différentes solutions dont tu parles.

Chacune a ses qualités, ses défauts. Dans mon cas je cherchais
un truc relativement simple (un peu comme toi) et j’ai pas mal souffert
pour tout comprendre et surtout comment faire tourner ça chez mon
hebergeur (TextDrive). En local, ça tournait pas trop mal par contre en
prod, j’avais plein de problèmes de compatibilité entre rails, ruby,
etc.
(surtout avec les engines que j’ai jamais réussi à faire tourner sur
TextDrive)

Bref, je m’y suis mis, et j’ai fait ma solution en 4 heures. et je
n’y vois
que des avantages:

  • c’est exactement ce que je voulais
  • je la comprend parfaitement
  • elle tourne en local et en prod
  • je suis un peu plus fort en ruby

Je me suis pour cela essentiellement inspiré

Résumé : 5 jours de perdus contre 1/2 journée d’efficacité.

PS : je suis pas un ruby guru, je débute. C’est bien la preuve que
c’est faisable. :slight_smile:

Christophe

Le 23-mai-06 à 17:30, Frédéric Logier a écrit :


#4

On 5/23/06, Christophe Guégan removed_email_address@domain.invalid wrote:

Résumé : 5 jours de perdus contre 1/2 journée d’efficacité.

PS : je suis pas un ruby guru, je débute. C’est bien la preuve que c’est
faisable. :slight_smile:

Merci pour ton retour d’expérience très riche. C’est effectivement ce Ã
quoi je pensais venir, une solution maison.
Je vais malgré tout tester le plugin AAA, qui semble rester simple dans
l’esprit et interfacable avec d’autres solutions.


#5

Moi je conseille quand même d’utiliser AAA et le modifier si besoin est.
Cela ne prend pas plus de 30 mn la première fois et pas plus de 5 la
seconde.

Le 23 mai 06 à 21:01, Frédéric Logier a écrit :


#6

De même, j’utilise aussi AAA. Très simple à mettre en place, et très
modulable (il y a déjà plein de code qu’on peut décommenter au besoin).
De plus, chose que beaucoup d’autres systèmes n’ont pas, il y a une
bonne documentation (
http://technoweenie.stikipad.com/plugins/show/Acts+as+Authenticated )
avec des cas réels d’utilisation mis en pratique.

++

yk

Frédéric Logier a écrit :


#7

Pareil, je conseil AAA. Ce plugin est très simple à mettre en place. Les
tests sont vraiment très instructifs et la doc est bien faite.

De plus si tu veux ajouter une gestion des rôles, tu as juste Ã
installer le
plugin acl_system d’Ezra qui se base sur AAA pour l’authentification.

Franck


#8

Merci pour vos remarques. J’ai adopté AAA qui fonctionne effectivement
en
toute simplicité.


#9

Salut Frédéric

comme Christophe j’ai un peu testé les différentes options jusqu’Ã
revenir Ã
du fait-maison, réalisé en quelques heures idem (j’ai opté pour un
hash+salt, et ajouté des droits et des privilèges car j’en avais besoin
dans
l’appli en question).

je te recommande la lecture du pdf
http://www.pragmaticprogrammer.com/titles/fr_rr/index.html qui te fera
gagner du temps (il y a deux recettes, une sur l’authentification,
l’autre
sur l’ajout de rôles et de droits).

Thibaut