Руководство по аутентификации на Ruby on rails - PullRequest
7 голосов
/ 31 марта 2010

Кто-нибудь знает хорошее руководство по созданию собственной системы аутентификации в ruby ​​на рельсах? Я хочу создать свою собственную систему для использования с моим сообществом im building:)

Спасибо!

Ответы [ 6 ]

8 голосов
/ 31 марта 2010

Я бы порекомендовал начать с Warden - он будет обрабатывать самые основы сессий для вас и даст вам хорошую основу для построения вашей логики на вершине. Плагин Rails Warden представляет собой довольно небольшую библиотеку, которая помогает интегрировать его в Rails. Оба эти проекта являются достаточно зрелыми и хорошо продуманными, но все еще находятся в процессе активной разработки - они являются хорошим выбором во всем.

Вы должны знать о Devise , другой структуре аутентификации (например, Authlogic или Restful Authentication), основанной на Warden. Он может не подходить для вашего проекта (но не для моего), но просмотр источника может дать вам несколько идей о том, как лучше использовать Warden.

Еще одна вещь, которую я хочу отметить, это то, что с точки зрения хеширования паролей вы должны обязательно использовать bcrypt .

4 голосов
/ 31 марта 2010

У Майкла Хартла скоро выйдет хорошая книга, и первые 8 глав доступны бесплатно в формате pdf здесь: http://www.railstutorial.org/ - они охватывают весь процесс создания очень надежной системы аутентификации на основе rspec - могут не рекомендую это достаточно высоко

2 голосов
/ 11 мая 2012

Ну, через некоторое время после того, как вы задали свой вопрос, лучший ответ, если вы хотите создать собственную систему аутентификации, а не использовать что-то вроде Devise, вероятно, будет Аутентификация Райана Бейтса с нуля Screencast .

1 голос
/ 31 марта 2010

Поскольку проверка подлинности является распространенной проблемой, которая уже решалась много раз, я бы начал с изучения уже существующих решений.

Например, взгляните на Restful Authentication , которая обеспечивает хорошую основу для аутентификации в Rails. Даже если вы предпочитаете использовать собственную систему, игра с Restful Authentication и понимание того, как она работает, должны дать вам хорошее представление о компонентах, необходимых при создании вашей собственной системы.

0 голосов
/ 14 ноября 2013

Я согласен с Ритчи ... У Devise есть очень приятные функции, но он не очень хорошо сочетается с другими. Для многих вариантов использования способ, которым он захватывает маршрутизацию, может усложнить вашу работу. Во многих ситуациях вам, возможно, лучше откатить свои собственные.

Devise вызвал циклические ссылки в моем конвейере ресурсов Rails, и настройки инициализатора в том виде, в котором они были установлены (в последней версии от вчерашнего дня), вступили в конфликт со значениями по умолчанию в сгенерированной им миграции.

Я создал системы аутентификации на уровне предприятия, включая проверку электронной почты, восстановление пароля и т. Д. И ни одна из них не требовала махинаций по маршрутизации, которые использует Devise. Если вам действительно нужны все функции, это может быть для вас. Но есть много причин, чтобы не использовать его тоже.

0 голосов
/ 31 марта 2010

Ознакомьтесь с этой статьей:

http://www.aidanf.net/rails_user_authentication_tutorial

Автор, шаг за шагом, проходит через всю структуру аутентификации с предложениями по дальнейшим улучшениям. Даже тесты обсуждаются.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...