# Membership tutorial?

**URL:** <https://www.ruby-forum.com/t/membership-tutorial/56245>\
**Category:** Rails\
**Created:** [November 12, 2005, 12:49pm UTC](https://www.ruby-forum.com/t/membership-tutorial/56245 "2005-11-12T12:49:39Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![cool\_screen\_name900](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/c68b51/32.png) [@cool\_screen\_name900](https://www.ruby-forum.com/u/cool_screen_name900)\
**Post date:** [November 12, 2005, 12:49pm UTC](https://www.ruby-forum.com/t/membership-tutorial/56245/1 "2005-11-12T12:49:39Z")

</div>

Anybody know of a good tutorial showing how to use  
Rails with web site membership? i.e. use a filter to  
authenticate, store member info in session/cookie,  
login, send passwords, etc.

thanks  
csn

* * *

Yahoo! FareChase: Search multiple travel sites in one click.  
[http://farechase.yahoo.com](http://farechase.yahoo.com)

---

<div class="post-metadata">

**Author:** ![cool\_screen\_name900](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/c68b51/32.png) [@cool\_screen\_name900](https://www.ruby-forum.com/u/cool_screen_name900)\
**Post date:** [November 12, 2005, 12:49pm UTC](https://www.ruby-forum.com/t/membership-tutorial/56245/2 "2005-11-12T12:49:39Z")

</div>

I’m not aware of a tutorial, but the Model Security generator does  
this decently. I believe the new login engine has a decent  
implementation of this as well, but haven’t gotten around to checking  
it out yet. You could either use one of those tools directly, or  
generate a sample project and rifle through the code to get a feel  
for how it’s done, and then re-implement it in your project. HTH…

Cheers,  
Mark

---

<div class="post-metadata">

**Author:** ![cool\_screen\_name900](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/c68b51/32.png) [@cool\_screen\_name900](https://www.ruby-forum.com/u/cool_screen_name900)\
**Post date:** [November 12, 2005, 12:49pm UTC](https://www.ruby-forum.com/t/membership-tutorial/56245/3 "2005-11-12T12:49:40Z")

</div>

- Model Security:  
[http://perens.com/FreeSoftware/ModelSecurity/Tutorial.html](http://perens.com/FreeSoftware/ModelSecurity/Tutorial.html)
- Authentication: [http://penso.info/rails/auth\_generator/](http://penso.info/rails/auth_generator/)
- Authorization:  
[http://randomoracle.org/2005/09/24/extensible-authorisation-for-rails](http://randomoracle.org/2005/09/24/extensible-authorisation-for-rails)
- AccessControlList:  
[Peak Obsession](http://wiki.rubyonrails.com/rails/pages/AccessControlListExample)
- ActiveRBAC: [https://rbaconrails.turingstudio.com/trac/wiki](https://rbaconrails.turingstudio.com/trac/wiki)
- SaltedHashLoginGenerator:  
[http://wiki.rubyonrails.org/rails/pages/SaltedHashLoginGenerator](http://wiki.rubyonrails.org/rails/pages/SaltedHashLoginGenerator)
- LoginGeneratorACLSystem:  
[Peak Obsession](http://wiki.rubyonrails.com/rails/pages/LoginGeneratorACLSystem)
- LoginGenerator: [Peak Obsession](http://wiki.rubyonrails.com/rails/pages/LoginGenerator)
- LoginEngine:

---

<div class="post-metadata">

**Author:** ![cool\_screen\_name900](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/c68b51/32.png) [@cool\_screen\_name900](https://www.ruby-forum.com/u/cool_screen_name900)\
**Post date:** [November 12, 2005, 12:49pm UTC](https://www.ruby-forum.com/t/membership-tutorial/56245/4 "2005-11-12T12:49:46Z")

</div>

Peter D. wrote:  
\> \* Model Security:  
[http://perens.com/FreeSoftware/ModelSecurity/Tutorial.html](http://perens.com/FreeSoftware/ModelSecurity/Tutorial.html)  
\> \* Authentication: [http://penso.info/rails/auth\_generator/](http://penso.info/rails/auth_generator/)  
\> \* Authorization:  
[http://randomoracle.org/2005/09/24/extensible-authorisation-for-rails](http://randomoracle.org/2005/09/24/extensible-authorisation-for-rails)  
\> \* AccessControlList:  
[Peak Obsession](http://wiki.rubyonrails.com/rails/pages/AccessControlListExample)  
\> \* ActiveRBAC: [https://rbaconrails.turingstudio.com/trac/wiki](https://rbaconrails.turingstudio.com/trac/wiki)  
\> \* SaltedHashLoginGenerator:  
[http://wiki.rubyonrails.org/rails/pages/SaltedHashLoginGenerator](http://wiki.rubyonrails.org/rails/pages/SaltedHashLoginGenerator)  
\> \* LoginGeneratorACLSystem:  
[Peak Obsession](http://wiki.rubyonrails.com/rails/pages/LoginGeneratorACLSystem)  
\> \* LoginGenerator:  
[Peak Obsession](http://wiki.rubyonrails.com/rails/pages/LoginGenerator)  
\> \* LoginEngine: …

Am I the only one to feel very uncomfortable with this abundance?  
In the good old days, all you needed was 2 books and 1 core.

Why is a “basic” and vital feature like authentication not in the core?  
And I18n? That blows me!

Alain R.
