gpt4 book ai didi

ruby-on-rails - Rails 3- Devise - 通过网络服务进行身份验证

转载 作者:太空宇宙 更新时间:2023-11-03 18:27:41 25 4
gpt4 key购买 nike

我需要在 RoR 3 中实现一个登录网络服务。我将 Devise 应用于用户模型并添加了一些字段。

我想做的是:1- 客户端执行 REST 服务,发送用户名和密码。2- 服务器验证(使用 User 表中的 encrypted_pa​​ssword 字段)并返回具有过期时间的访问 token 3- 客户端在他执行的所有服务中发送该访问 token ,如果 token 未过期,服务器将无错误地发送响应。

如何使用 Devise 实现此方案。我已经将 Devise 应用于用户模型。

谢谢!

最佳答案

Devise 不会开箱即用。

Devise 可以处理初始身份验证,例如,只有一行可以取消注释以允许对电子邮件/密码进行基本身份验证。

# config/initializers/devise.rb
config.http_authenticatable = true

发送和存储访问 token 是您必须在家做饭的事情,据我所知,Devise 不会做类似的事情。也许属于用户的代币模型?

您可以创建一个自定义的 Warden 策略来通过您的 token 进行身份验证,在 devise.rb 的底部有一个如何工作的示例。

谈到身份验证 token ,我会想到 Oauth,它比您想象的要复杂得多,但具有成为某种标准的优势。如果您对那条路线感到好奇,我会查看:https://github.com/nov/rack-oauth2

关于ruby-on-rails - Rails 3- Devise - 通过网络服务进行身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8742946/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com