问题标签 [jwt-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 投票
1 回答
88 浏览

vue.js - 何时刷新 JWT 令牌?

目前我在我的 Laravel 后端使用 JWT-Auth 来使用令牌保护我的 API 路由。但是,在一段时间后令牌变得无效并且我收到错误消息401 Unauthorized。所以我想我必须在某处刷新令牌。什么时候做这件事最好?每次您提出请求时,我都会阅读有关这样做的信息,但我想确保这是正确的方法。我从他们的文档中使用了本指南:https ://jwt-auth.readthedocs.io/en/develop/quick-start/#create-the-authcontroller 。在这里,他们创建了一个新令牌的功能。但是每次我提出请求时我将如何实现呢?我只是在控制器中通过Axios请求调用此函数还是在另一个控制器中调用它或其他什么?非常感谢任何提示。

顺便说一句,我有一个 Vue.js 前端。

0 投票
1 回答
4205 浏览

c# - ASP.NET Core 2.2 JWT 身份验证

我最近一直在学习 ASP.NET Core 2.2 并尝试使用 JWT 令牌开发基于角色的登录示例(网站 + Web API)。

定义很简单:

  • 如果用户的角色是“admin”,那么它会重定向到管理页面。
  • 如果用户的角色是“用户”,那么它会重定向到用户页面。

但我在“带有 ASP.NET Core 2.2 的 JWT 令牌”上找到的大多数解决方案和文章仅适用于 Web API。

从以下文章中,我几乎了解了 JWT 令牌的工作原理以及如何在 Web API 端实现它:

http://jasonwatmore.com/post/2019/01/08/aspnet-core-22-role-based-authorization-tutorial-with-example-api

现在我的问题是如何使用 ASP.NET Core 网站使用上述 API?

对于很多人来说,这可能是一个简单的问题,但我对 Web 开发还很陌生,很多东西都不了解。

任何帮助,将不胜感激。提前致谢。

0 投票
1 回答
5128 浏览

php - 如何在 Laravel 5.8 中附加授权标头

我想附加Authorization: Bearer {yourtokenhere}在我的 Laravel 中。如果在 Postman 中,我将 Authorization 放在 Headers 选项卡上并通过编写手动给出令牌值,Bearer {token}这样我就可以保护特定的路线,但是如何在 Laravel 源代码中做到这一点?我应该在我的控制器中做什么,或者我应该在中间件或内核或其他地方添加另一种方法?这是因为我得到了{"error":"token_not_provided"}每个访问受保护的路由jwt.auth middleware

这是给我的受保护路线{"error":"token_not_provided"}

这是我在 AuthController 中的登录方法:

0 投票
1 回答
1411 浏览

php - JWT Auth 错误:无法从请求中解析令牌

目前我正在使用 JWT Auth 开发 Laravel 5.8,一切都在 Postman 中运行,但是当我尝试在浏览器上进行测试时,我遇到了很多错误,并且已经一一修复。现在,当我尝试使用 Request 传递 JSON Web Token 时出现另一个错误。未正确提供令牌。在我登录过程之后:

令牌生成成功。但是当我需要令牌到另一个控制器时,令牌生成失败,一个例子就是这个方法:

每次我想JWTAuth::parseToken();我都会收到这个错误:

无法从请求中解析令牌

那么为什么会这样呢?我该怎么办?因为在signin方法中,成功生成了token,但是在index我无法访问token。感谢您的关注。

0 投票
0 回答
923 浏览

angular - 当我使用“浏览器刷新/重新加载”或 F5 刷新页面时,拦截器未执行

我目前正在学习 Angular 7,但我面临问题并希望您能帮助了解发生了什么。我正在使用 JWT 身份验证(Spring Boot Security),每次单击时都会调用我的拦截器来设置令牌,然后再将请求发送到服务器。当我使用浏览器后退/前进时,一切正常。但是如果点击“浏览器刷新”,拦截器不会被调用,我会得到一个 Whitelabel 错误页面。我的问题是:1-为什么刷新不调用我的拦截器?2-你知道如何解决这个问题吗?

感谢你们对我的帮助

0 投票
1 回答
784 浏览

php - 如何在 lumen 5.8.* 中使用 dingo 修复实现 jwt?目标 [Dingo\Api\Contract\Routing\Adapter] 不可实例化

我已经在我的 Lumen(5.8.4) 应用程序中将 tymon/jwt-auth 版本 1.0.0-rc4.1 实现为第三方,现在当我继续按照https://github.com/dingo/使用 Dingo 实现身份验证时api/wiki/Authentication在我需要添加它的步骤(或任何其他方式向 dingo 注册 jwt)

到 app.php 我得到这个错误

错误:目标 [Dingo\Api\Contract\Routing\Adapter] 在构建 [Dingo\Api\Auth\Auth, Dingo\Api\Routing\Router] 时不可实例化。

我想我已经搜索并尝试了互联网上关于这个主题的所有东西,因为我正在研究它 2 天,其中大多数都使用旧版本的 dingo 和/或 Lumen。我还尝试了在 git 上找到的不同适配器,但它们都不起作用。

这是我的设置:composer.json:

应用程序.php

有人在较新版本上进行过实施,或者有更好的方法吗?我尝试了一个工作示例 https://github.com/krisanalfa/lumen-jwt但正如我所见,上次更新是 2 年前,Lumen 版本是 5.4。我应该使用它还是不推荐使用它?

0 投票
2 回答
962 浏览

laravel - laravel 5.5 不支持 jwt auth lib

我是 Laravel 的新手,在 laravel 5.5.18 中使用 JWT 身份验证,但它对我不起作用,它在 api 登录时出错 Interface 'Tymon\JWTAuth\Contracts\JWTSubject' not found"

任何人都可以帮我解决它。

谢谢

0 投票
2 回答
131 浏览

javascript - 即使 Token 不为空,JWT 解码也会重新调整为空

JWT 解码不工作

我已经尽我所能

req.body.auth_token 不为空,它正在返回令牌!

0 投票
1 回答
175 浏览

android - 如何在原生应用中处理 JWT 过期机制

我正在 React Native 上构建一个混合应用程序,我们在后端使用 Django rest 框架。我们使用 JWT 来保护应用程序,应用程序的用例涉及存储敏感信息。

问题在于 JWT 到期。我需要使用 accessToken 访问 API 以获取新令牌,这可以正常工作,并且如果用户每天打开应用程序,令牌不会过期,这几乎是不可能的。

因此,用户每隔几天就会注销一次,因为当他打开应用程序时,令牌已过期。有没有更好的方法来处理这个?Facebook 应用程序、谷歌支付​​应用程序永远不会注销用户。

我尝试保留一个与用户关联的变量,暗示他是移动应用程序用户,因此除非他注销或明确这样做,否则该令牌永远不会过期,但我有评论这是一种危险的方法。

0 投票
2 回答
8894 浏览

authentication - 为什么 JWT 是无状态认证?

我试图了解 JWT 身份验证如何是无状态的。在有状态身份验证中,会有一个会话 id。这里有一个已签名的 JWT 令牌。所以认证服务器发出 JWT 令牌,但是我可以说在后续请求中对 JWT 令牌的验证是由端点服务器(应用程序服务器)而不是认证服务器完成的。我相信这是可能的,因为 JWT 是用到期日期(以及一些其他信息)签名的,并且身份验证服务器的公共证书可用于所有端点服务器。

因此身份验证服务器将只负责发布令牌而不是验证。验证将由端点服务器完成。

我的理解正确吗?这就是 JWT 无状态的方式吗?否则,我看不出它与有状态身份验证有何不同,因为两者都可以使用令牌来实现。

在有状态身份验证中,中央服务器将负责发布令牌以及验证每个请求。