Devise中的Token Authenticatable模块

时间:2011-02-04 18:41:56

标签: ruby-on-rails-3 authentication devise token

我开始在我的Rails应用程序中使用Devise,但Token Authenticatable基于身份验证令牌(也称为“单一访问令牌”)模块谜题在用户中签名我

用户是否仅针对其当前会话进行了身份验证?如果他现在使用包含令牌的URL,他可以在以后的时间重新使用它并仍然可以访问,或者他是否获得单个访问权限?

可以使用相同的令牌同时对多个用户进行身份验证吗?

我已经广泛搜索了一个有效的例子;如果在别处解释,请原谅我。 任何指针都会受到欢迎。谢谢你的帮助。

1 个答案:

答案 0 :(得分:25)

简短的回答是:这取决于你。

  

这个模块只提供了一些   帮助您管理令牌的助手,   但是你可以选择如何做到   用它。例如,如果你想   每次用户都有一个新的令牌   保存他的帐户,你可以做到   以下内容:

before_save :reset_authentication_token
     

另一方面,如果你愿意的话   除非存在令牌,否则生成令牌   应该使用:

before_save :ensure_authentication_token
     

如果要在之后删除令牌   它被使用,你可以这样做   after_token_authentication回调。

请参阅http://rdoc.info/github/plataformatec/devise/master/Devise/Models/TokenAuthenticatable上的此模型的文档。