2013-02-20 5 views
1

Я сделал свой собственный auth, как на моем старом сайте php, я использую для этого сеансы и хеш md5 для прохода. Моя сессия после того, как AUTH выглядеть:Rails auth без какого-либо драгоценного камня

{"session_id"=>"874e2703dbaa562da8350fe141612cb6", "_csrf_token"=>"o3g5VHz7f6BPCwpaphI/7qnBnaDVBcguKVB4lXqvUss=", "user_id"=>2, "login"=>"123", "avatar"=>/uploads/resume/avatar/2/avatars/noava.jpg, "group_id"=>1} 

Все другие вещи делаются, но теперь, как я могу ограничить доступ к различным действиям в мой контроллер в зависимости от моей сессии?

Или я могу исправить это с помощью драгоценных камней и камней? Они используют bcrypt, но мои старые пароли в md5 и я не могу использовать для этого bcrypt.

ответ

1

Вы путаете идеи аутентификации и авторизации.

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

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

Использование канкана, или что-нибудь еще here.