2009-08-03 7 views
1

J'essaye de faire une application Web dans Sinatra, et je me demandais s'il y avait une bonne solution pour l'inscription d'utilisateur avec la vérification d'email, aussi bien que l'authentification - Peut-être en tant que middleware rack? Le support d'OpenID serait bien d'avoir aussi. Je suppose que je peux rouler le mien, mais je ne voulais pas réinventer la roue. Si je dois le faire, quelqu'un peut-il me diriger vers les bibliothèques que je pourrais utiliser, peut-être même un exemple de code? Je crains aussi de finir par oublier d'implémenter quelque chose d'important avec l'inscription/l'authentification, puisque je ne l'ai jamais fait auparavant.Inscription d'utilisateur avec vérification d'email, et authentification dans Ruby

Dans le cas où j'ai besoin d'une solution maison, j'ai trouvé bcrypt-ruby pour le chiffrement de mot de passe et Sinatra::Mailer ou Pony pour l'email. Pour la connexion avec le support OpenID, il y a hancock et hancock-client, bien que je ne sois pas tout à fait clair sur l'utilisation et je n'ai pas vraiment besoin de single sign-on support. Peut-être que je devrais juste utiliser a ruby openid library? Ai-je besoin d'autre chose?

Ceci est une question assez embrouillée, mais j'espère que quelqu'un de plus expérimenté peut me diriger dans la bonne direction.

Répondre

2

Vous pourriez être intéressé par Authlogic. Vous devrez vous-même mettre en œuvre la vérification par e-mail, mais cela vous fournira une base solide pour le prendre en charge.

Authlogic peut être utilisé dans tout cadre de rubis que vous voulez: Rails, Merb, Sinatra, Mack, votre cadre , quel que soit. Ce n'est pas lié jusqu'à Rails. Il le fait par en s'écartant lui-même de ces contrôleurs en utilisant un adaptateur contrôleur . Merci à Rack, il y a une norme définie pour structure du contrôleur, et c'est ce que adaptateur abstrait Authlogic suit. Ainsi, si votre contrôleur suit les normes du rack, vous n'avez rien à faire de .

+0

Merci, cela semble bon. Cependant, je ne peux pas comprendre comment l'utiliser avec Sinatra, puisque les exemples sont pour les rails ... – ehsanul

+2

J'ai écrit un adaptateur pour faire fonctionner authlogic avec sinatra. Il est disponible dans le cadre de ce modèle: http://github.com/ehsanul/Sinatra-Authlogic-Template/tree/master – ehsanul

+0

Très cool @eshanul. –

Questions connexes