如何用设计验证令牌

时间:2012-03-10 20:36:58

标签: ruby-on-rails authentication devise token

我想使用设计'token_authenticatable帮助程序来根据系统对用户进行身份验证。

我发现了一些较旧的文档,其中使用了名为valid_authentication_token?(...)的方法,但在较新的设计版本中找不到相同的文档。

那么验证用户的正确方法是什么? 我是否应该为具有命名令牌的用户请求Model并检查电子邮件地址是否匹配?

非常感谢你的帮助。

PascalTurbo

1 个答案:

答案 0 :(得分:6)

如果你添加

t.token_authenticatable

给用户ActionRecord,然后添加

devise  :token_authenticatable

到您的用户模型

并在config / initializer / devise中指定哪个param是您的令牌密钥,如下所示:

config.token_authentication_key = :auth_token

然后使用

的控制器
before_filter :authenticate_user!  # Tell devise to use :user map 

进行身份验证。在authenticate_user!之后,各个方法可以使用

进行测试
user_signed_in?

将通过登录会话或在查询字符串上传递或使用HTTP基本身份验证传递的设计授权令牌授权用户。有关详细信息,请参阅设计助手code