2010-04-19 6 views
2

Im learning Rails en créant des applications.Authentification dans Rails, par où commencer?

Je veux faire ma première application authentifiée: les utilisateurs signup, connectez-vous, faire quelques changements dans les modèles auxquels ils ont accès et fermeture de session.

J'ai fait la recherche Google, mais il est assez déroutant: de nombreux plug-ins, de nombreux tutoriels. Je ne sais pas par où commencer.

Y at-il un état de l'art méthode d'authentification pour Rails? Qu'est-ce que vous utilisez dans la production pour authentifier vos utilisateurs?

Toute aide dans ce domaine vous sera utile. Merci

Répondre

1

+1 à Jason, -1 à NSD et sparky. Système d'authentification est pas la chose que vous voulez construire vous-même, au moins si vous visez l'utilisation de la production. C'est comme si vous inventiez votre propre algorithme de cryptage - il est beaucoup plus sûr d'utiliser quelque chose de très testé et bien développé. J'ai également utilisé authlogic, mais il existe des alternatives là-bas - comme le bon vieux restful authentication, et devise, qui je pense est plus moderne pour ainsi dire. BTW le twolatest railscasts sont consacrés à concevoir.

+0

Est-ce encore "plus sûr" quand cette solution testée de manière exhaustive tout le monde fonctionne parce qu'ils croyaient qu'il était bien développé a un exploit publié qui compromet des milliers de systèmes? L'homogénéité engendre l'extinction, et si quelqu'un avait prouvé le contraire, il y aurait probablement un système d'authentification officiellement sanctionné dans le cadre. –

+0

semble bien, et le railcast l'utilise dans Rails 3 – Victor

+0

@NSD: Eh bien monsieur, si vous êtes capable de construire votre propre système sans aucune chance d'exploitation, c'est bon pour vous, et je vous enlève mon chapeau. Mais beaucoup de développeurs modestes comme moi se rendent compte que c'est un peu dépassé (et pour la même raison quand nous avons besoin de la cryptographie à clé publique, nous utilisons simplement RSA.) Bien sûr, si c'est cassé, nous avons des problèmes. cassé plus vite - RSA ou mon algorithme auto-inventé?). En ce qui concerne votre dernière phrase, mon article montre probablement qu'il n'y a pas d'homogénéité dans le monde de l'authentification pour les rails. –

5

Je l'ai utilisé authlogic dans le passé et ont été très heureux avec elle. Ryan a un railscast (tutoriel vidéo) pour authlogic here.

-1

Un homme état de l'art système d'authentification est pile sans valeur d'un autre homme d'ordures. Il vaut presque toujours mieux rouler le vôtre à long terme. Ruby Cookbook d'O'Reilly a quelques exemples extrêmement basiques qui vous mettront dans la bonne direction générale, alors vous pouvez décider si oui ou non les solutions d'autres personnes vous conviennent.

+0

Même si je ne suis pas d'accord que vous êtes «presque toujours préférable de rouler les vôtres à long terme», je pense que cette réponse vaut la peine d'être votée. Je pense que c'est un bon exercice pour écrire le vôtre dès le début. Une fois que vous avez des besoins intermédiaires, vous pouvez passer à un plugin populaire, puis lorsque vous avez des exigences d'experts, vous pouvez changer votre propre système d'authentification, maintenant plus avancé. – Andreas

-1

Je suis d'accord avec NSD. Déterminer les plugins & comment ils devraient se lier avec votre application à moi plus de créer un système d'authentification dans ma dernière application. Mes astuces - créez un contrôleur user_sessions et utilisez les méthodes CRUD normales pour gérer la création/destruction (c.-à-d. En vous connectant &). Créer un autre modèle pour l'utilisateur - il peut gérer créer des comptes & mise à jour (c.-à-modification des mots de passe). Collez a: before_filter sur chaque contrôleur qui a besoin de protection.

0

Si votre application est simple et vous voulez juste une page de connexion utilisateur simple et sécurisé que vous pourriez regarder dans le plug-in Restful Authentication. Il est très facile à utiliser et si vous n'avez pas beaucoup d'exigences d'authentification, cela devrait fonctionner correctement.

script/plugin install git://github.com/technoweenie/restful-authentication.git 
script/generate authenticated user sessions 
rake db:migrate 

Vous pouvez en savoir plus en consultant cet excellent railscast.

0

En tant que débutant, je recommande Restful authentification comme simple à configurer et vous lever et courir sans temps

suivant est une étape par étape guid

http://avnetlabs.com/rails/restful-authentication-with-rails-2

et authlogic - (http://github.com/binarylogic/authlogic) est une autre grande prise dans laquelle est plus flexible, mais nécessite un certain travail pour mettre en œuvre l'enregistrement des utilisateurs et des choses

acclamations,

Questions connexes