Модель авторизации для Ruby on Rails - PullRequest
1 голос
/ 17 декабря 2009

Я создаю приложение для управления проектами, и я не уверен, какая модель авторизации является наилучшей / правильной для реализации, если я новичок в Rails (и программировании в целом). Вот что я пытаюсь сделать.

Я хочу иметь возможность добавить «клиента» в приложение, а затем несколько проектов для клиента. Я хотел бы иметь возможность добавлять пользователей (которые по сути являются представителями клиента), чтобы просматривать, что клиенты используют несколько проектов, но не других клиентов. Я намерен иметь контроллеры для отслеживания времени, заметки, комментарии и изображения, которые будут связаны как с клиентами, так и с проектом этого клиента.

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

Имеет ли это смысл?

Ответы [ 6 ]

4 голосов
/ 17 декабря 2009

Я считаю, что то, что вы упоминаете, называется авторизацией, а не аутентификацией:

Я бы предложил acl9 для авторизации и authlogic для аутентификации.

3 голосов
/ 17 декабря 2009

Эти (бесплатные) Railscasts должны дать вам пищу для размышлений. Для такого рода вещей существует множество отличных RubyGems / плагинов.

2 голосов
/ 18 декабря 2009

Ruby Toolbox дает вам обзор инструментов и их популярности в сообществе рельсов (по оценкам наблюдателей и разработчиков на GitHub). Как вы можете видеть, предлагаемые плагины restful_authentication и authlogic находятся практически на одном уровне.

1 голос
/ 18 декабря 2009

Я использовал плагин авторизации в прошлом, и мне нравится, потому что он дает несколько хороших мета-методов, таких как:

  user.is_eligible_for_what   --> returns array of authorizable objects for which user has role "eligible"
  user.is_moderator_of? group --> returns true/false
  user.is_moderator_of group  --> sets user to have role "moderator" for object group.
  user.is_administrator       --> sets user to have role "administrator" not really tied to any object.

Также есть новый RailsCast на CanCan .

1 голос
/ 17 декабря 2009

Restful Authentication по-прежнему является золотым стандартом для аутентификации пользователей в ruby ​​на рельсах.

0 голосов
/ 18 декабря 2009

Я бы использовал AuthLogic для аутентификации (вход в систему пользователей и проверки того, кем они себя называют) и Declarative_authorization для авторизации (убедитесь, что у них есть доступ к ресурсам) , См. Отличные Railscasts Райана Бейтса по AuthLogic и restful_authentication для получения дополнительной информации.

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