问题标签 [express-jwt]

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 投票
4 回答
16129 浏览

javascript - 即使我在授权中输入令牌,JWT 仍返回无效签名错误

我已经查看了这个堆栈溢出条目Node.js - Express.js JWT 总是在浏览器响应中返回一个无效的令牌错误,但我在那里找不到解决方案。

我试图编写一个小型节点应用程序作为使用 JWT 访问令牌的概念证明。我去了http://jwt.io/并尝试跟随视频教程。我已经生成了一个令牌,但是在实际使用该令牌时,我得到一个“UnauthorizedError:无效签名”错误。下面是我的源代码

0 投票
1 回答
1824 浏览

javascript - express-jwt 无法从路由目录访问 req.user

新表达...

req.user当我处理文件中的请求时,我可以访问app.js。但是,即使我routes/users.js在. 正如我所提到的,我是新来表达的,所以我可能配置不正确。非常感谢任何提示!如果不清楚或者您需要更多信息,请告诉我。谢谢!req.userapp.js (app.use('/users', authenticate);

应用程序.js

路线/users.js

0 投票
3 回答
110013 浏览

javascript - 如何使用来自 jQuery 的 AJAX 请求发送令牌

我使用 express-jwt 并通过 jQuery 创建我的令牌并将其保存在我的 localStorage 中:

我的后端有一条受保护的路线,例如:

如何使用请求标头从 localStorage 发送令牌?

0 投票
2 回答
5117 浏览

javascript - No authorization token was found when res.redirect

I have two applications, both on Nodejs. One front-end and other back-end. My back-end app is protected with token access using express-jwt and jsonwebtoken middlewares.

My problem is: I am making a request from front-end to back-end passing the token on header, back-end accepts the request and respond properly. Then in the front-end I redirect the response to an specific page (res.redirect('/')), in that moment I get the error UnauthorizedError: No authorization token was found

My front-end request:

I don't know why this happen. Could you help me? Thanks in advance.

0 投票
1 回答
6655 浏览

node.js - 使用 express-jwt 进行基于角色的授权?

我正在使用 express-jwt 来保护我的 API 端点,以便只有经过身份验证的用户才能访问我的 API。现在我还想根据用户的角色保护我的 API。例如,如果用户是管理员,则只能访问某些 API,如果他们是超级管理员,则只能访问其他一些 API,等等。我该如何实现呢?我在 express-jwt github doc 中找到了这个代码片段:

看起来这段代码正在 API 控制器功能中进行授权。这是唯一且推荐的方法吗?有没有更好的方法来做到这一点?关于最佳实践的任何建议?

0 投票
2 回答
1017 浏览

angularjs - 使用 Passport 对 API 端点进行身份验证

在使用 jsonwebtoken、passport 和 passport-local 添加身份验证的几个 教程之后,我一直坚持将其集成到我的项目中。我想要它,以便对任何 API 端点的任何请求都需要身份验证,并且对触及 API 的前端的任何请求都需要身份验证。

现在发生的事情是我可以让用户登录并注册,但是一旦他们登录,他们仍然无法访问需要身份验证的页面。用户收到 401 错误。就像令牌没有在请求中正确传递一样。

我也尝试添加一个“身份验证拦截器”

但这似乎也没有奏效。
我忘记或错过了什么?

编辑:

输入凭据并单击登录后,我在 chrome 控制台中收到此错误

但是在我成功通过身份验证后,我的导航链接会按预期显示。
我也在运行 Node 的终端中收到此错误

编辑:

当我注入我的对象时,这与我的服务器路由的这一行有很大关系。auth基本上我认为我的身份验证令牌没有随我的GET请求一起发送。但我认为当我将身份验证对象传递给 GET 请求时会发生这种情况。

编辑:

添加了 GET 请求的图像。
Chrome 中 GET 请求的屏幕截图。

编辑/更新:

我相信我已经解决了身份验证问题,但是我的成员视图状态问题在经过身份验证后仍然无法呈现。我已将我的最新更改推送到 github,如果您提取最新的并运行,您将看到您可以进行身份​​验证,但单击查看链接无法加载视图。

0 投票
1 回答
3911 浏览

jwt - 如果用户想从不同的机器上退出帐户,JSON Web 令牌 (JWT) 是否会被拒绝或列入黑名单?

我正在构建一个需要身份验证的应用程序,我担心用户可能希望能够远程注销。有没有办法使用 JSON Web 令牌并能够将它们列入黑名单或拒绝它们?我知道他们的好处是无国籍,但是远程注销会很好。

编辑:使用 Express.js 使用 express-jwt 模块,有一种方法可以撤销 tokens。此外,还有一个模块express-jwt-blacklist。我仍然不明白这些策略是如何工作的,并且想知道此时的最佳实践是什么。

0 投票
1 回答
3351 浏览

angularjs - 如何在 Json Web Token 中传递用户名/密码等安全数据?

有很多讨论和赞成 MEAN 应用程序的基于令牌的身份验证架构是安全的。但我有一个问题,它是否真的将用户名和密码作为 JSON Web 令牌中的有效负载传递给授权和身份验证,如果我们没有在有效负载中传递安全信息,那么 JSON Web 令牌如何在服务器中验证没有用户名/密码的用户边。

我读了很多架构的东西,但他们无法解释他们在不使用用户名/密码的情况下使用什么逻辑来验证令牌。

将身份验证令牌存储在 cookie 中而不是 Web 存储中是否有效?

是的,我知道他们使用私钥和公钥进行验证,但这还不足以进行身份​​验证。要对特定用户进行身份验证,它需要一些关键值,例如用户名/密码或识别特定用户所需的任何关键访问权限。

0 投票
1 回答
394 浏览

angularjs - AngularJS:在页面刷新时恢复状态的正确方法?

刷新后(即 F5),Angular 范围内的所有内容都被清除并重新加载,那么如何恢复用户离开的页面,包括让他保持登录/身份验证?关于如何实现这一点有一些建议,但我发现的大多数有用资源都是几年前的,所以这个问题的目的是获得更新的答案,看看更有经验的 Angular 开发人员做了什么和感受是这样做的正确方法。

这是两年前为 sessionStorage 提供服务的建议。这是三年前使用 ngCookies 服务的博客文章。

最终,我还想保留身份验证(可能使用 JSON Web 令牌),以便用户保持登录状态,直到他们的令牌过期,以防影响 sessionStorage / ngCookies / 或任何更现代的解决方案之间的决定。

0 投票
3 回答
5316 浏览

node.js - 使用 JWT 令牌机制实现从所有设备功能中注销的方法有哪些?

我想在我的下一个项目中实现 JWT。我只想知道是否有任何最佳方法可以在 JWT 中实现从所有设备注销。由于 JWT 是无状态机制,我们是否必须涉及 redis/db?