问题标签 [devise-token-auth]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
353 浏览

ruby-on-rails - 他们的身份验证库是否类似于 Devise,仅支持 API 轨道应用程序但也支持刷新令牌?

我不断看到很多 Rails API 服务的教程,它们只是带回会话 cookie 并使用大量的 Devise 配置。我不反对使用 Devise Token Auth,但据我所知,它不支持 JWT。

我想要 JWT 支持,但我也想要像 Devise 一样的确认/锁定/解锁帐户等功能。每当我看到具有静默刷新功能的 JWT 教程(在访问令牌过期或即将过期后,刷新令牌用于获取新令牌)时,它们都是以 Node.js 作为后端的教程。Devise JWT 是一个位于 Devise 之上的库,但需要对 Devise 进行大量配置,并且它不支持刷新令牌,而且该库的作者似乎对撤销 JWT 有一种奇怪的哲学(这违背了 JWT 在我的意见)。

我觉得这个问题应该已经通过某种现代化的库来解决,用于仅 API 的应用程序,或者使用支持访问和刷新 JWT 以实现静默刷新的 Devise 或 Devise Token Auth 的某种配置。

或者,是否存在一门旨在使用 React 作为前端的课程?

0 投票
1 回答
154 浏览

ruby-on-rails - 有效令牌?即使访问令牌无效也返回 True

我正在使用带有mongo后端的“ devise_token_auth ”gem,当我尝试使用 valid_token 检查令牌是否有效时(access_token,client) :无论access_token是什么,它都会返回True。请指导我完成这个。

*注意:如果我输入了错误的客户端,那么它会返回 false,但不会为错误的“访问令牌”返回 false。

0 投票
0 回答
90 浏览

ruby-on-rails - Rails“设计令牌身份验证”功能在用户更新时很慢

我有带有“devise_token_auth”gem 的 Rails 应用程序。当访问令牌过期时,我注意到 SQL 更新非常缓慢,并且新的访问令牌保存在用户中。

我注意到用户表在更新期间被锁定,但查看 gem 代码应该不会花费太多时间。我在 users 表上有索引。应用程序中的所有其他查询都正常(快速)。

这些是此查询的详细信息:

知道这里发生了什么吗?

0 投票
0 回答
29 浏览

ruby-on-rails - DeviseTokenAuth 每个用户有多个电子邮件

我想允许我的用户管理多个电子邮件地址,并设置一个主要地址。我知道 Devise gem 鼓励使用我使用过的 gem devise-multi_email https://github.com/allenwq/devise-multi_email

问题是我也使用了 devise-token-auth gem,它似乎不能很好地使用它。在我删除表上的电子邮件列以支持新表include DeviseTokenAuth::Concerns::User后,在我的用户上添加行会中断。usersemails

似乎没有太多关于如何使其适应工作的信息。我希望我能找到一篇关于它的不错的教程博客文章。

0 投票
1 回答
644 浏览

ruby-on-rails - 我应该如何向使用 Rails 构建的 Web 应用程序添加反应前端?

我有一个应用程序,我在后端使用 ruby​​ on rails 构建,前端是简单的 rails 视图。我想在前端添加反应以使其看起来更好。我已经阅读了关于使用 react-rails gem,或者创建一个新的 react 应用程序并将 rails 应用程序用作 API 的信息,所以我想知道最好的方法是什么。我还使用了 devise ruby​​ gem 来处理用户身份验证——但是我已经看到了一些建议,如果我想使用 rails API 路线,我需要使用 devise_token_auth gem ...你将如何添加一个反应前端到一个完整的 Rails 应用程序?

0 投票
1 回答
532 浏览

ruby-on-rails - 在设计令牌身份验证中确认电子邮件后如何重定向到登录页面/或使用户登录成功

我正在使用带有 React 前端的设计令牌身份验证,现在我正在通过电子邮件确认用户。正在发送电子邮件,但不知何故它生成了错误的 URL。

生成的 URL 是。

http://localhost:3001/auth/confirmation.4?confirmation_token=AoWH2yYxuHHnBzJRF746

我的路线。

我的应用程序/views/devise/mailer/confirmation_instructions.html.erb

单击确认我的帐户后,它成功将我带到我的应用程序,但 URL 错误。如果我达到以下条件之一,我会很高兴。

  1. 用户确认后自动登录。
  2. 确认帐户后进入登录页面,然后他为您提供凭据并登录。

对于 1,我已经覆盖了 confirms_controller.rb 之类的。

在路线.rb

0 投票
1 回答
37 浏览

ruby-on-rails - 为什么每次请求后访问令牌都会失效?

devise_token_auth 文档说“令牌应该在每次向 API 发出请求后失效。” https://github.com/lynndylanhurley/devise_token_auth/blob/master/docs/conceptual.md#about-token-management

但为什么?如果令牌在每次请求后都没有失效,会有什么风险?例如,如果令牌在请求后一两分钟内有效怎么办?或者,如果令牌保持有效一两个星期?

0 投票
1 回答
409 浏览

ruby-on-rails - 在删除用户时设计令牌身份验证跳过更新身份验证标头

我在我的 Rails 应用程序中同时使用 devise_token_auth 1.1.3 和 devise 4.4.3,我正在尝试删除当前用户。我的用户被称为“员工”。问题是当我尝试删除当前用户时,它会尝试为不存在的用户更新 auth 标头。

在该渲染 json 行中,它在 devise_token_auth 中命中该行并崩溃;

更新:尝试使用注册控制器删除用户

我已经设置了当前路线覆盖

并像这样覆盖注册控制器;

现在在我的测试中,如果我打电话

它根本没有击中byebug。

0 投票
1 回答
601 浏览

ruby-on-rails - 设计令牌身份验证确认电子邮件链接已过期

我目前正在开发一个网站,但我对带有设计令牌身份验证的确认链接有疑问。

一切正常,在有人注册后,他们会收到一封带有确认链接的电子邮件。此链接正在确认并正常工作,但当此链接过期(我在配置中使用 config.confirm_within = 1.day 进行设置)或有人再次单击此链接时,他们会收到“路由错误”。所以我想应该有一种方法可以在该链接过期时重定向到主页,并且可能会显示一条消息,说他们必须再次要求电子邮件确认..

我有这个确认路线:

我使用最后一个路由 POST 重新发送电子邮件并且它正在工作,但另一个路由不起作用,这是有道理的,因为我正在使用 API。但是当你遇到错误时应该有一个重定向 url

有什么想法吗?先感谢您

0 投票
1 回答
443 浏览

ruby-on-rails - 令牌寿命不适用于设计身份验证令牌宝石并在 Rails 葡萄 api 中设计

我有一个已通过设计验证的 rails-grape api 应用程序。现在我正在尝试使用 api 实现自动会话超时。为此,我实现了 devise_auth_token gem。

我的 devise_auth_token.rb

我已经运行了文档中提到的安装命令。

我已经更新了我的迁移文件,例如:

我的路线.rb

如您所见,我将 token_lifespan 保持为 60 秒。但即使在我闲置近 5 分钟后,我的会话也不会过期。我需要帮助来了解我在这里缺少/做错了什么。任何帮助将不胜感激。

提前致谢。