问题标签 [json-web-token]
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.
javascript - 如何在 Javascript 中创建 JWT
我是 JWT 的新手,我正在尝试在 javascript 中创建一个简单的 JWT,将其发送到控制器(使用 web-api),在 sql 数据库中检查它。当我在网上搜索时,我发现了一个例子://HEAD
//声明
//和签名。
我想在 Javascript 中创建我的第一个 JWT,但我觉得缺少一些东西.. 完整的结构是什么?仅从头部开始似乎不合逻辑(例如上面的示例..)我需要一个完整的示例或解释或指向完整示例的链接。谢谢
saml - JOSE 标头是 JWT 令牌的必需部分吗
我正在考虑将 JWT 功能添加到令牌生成系统中,该系统目前使用我们自己的签名和自定义算法支持 SAML。在这种情况下,我们是否应该始终拥有令牌的 JOSE 标头,或者我们可以仅生成带有声明的 JWT。
node.js - jsonwebtoken 不会过期
我正在为 node.js 使用 jsonwebtoken 包:
像这样创建令牌:
像这样验证:
但是我的令牌永不过期(我在“请求”之间等了几分钟)。
node.js - 使用 JWT 撤销/使令牌无效
我正在使用带有节点的 JWT (jsonwebtoken) 包进行令牌处理。
有没有办法“注销”/撤销/使令牌无效?
node.js - 使用 Ember 和 Node/Express 和 json Web 令牌进行 RESTful 身份验证,如何验证用户的电子邮件地址?
这是我的工作流程:
- Ember 对新用户注册的操作是向 Express 发送用户数据。
- Express 然后创建一个 Web 令牌,对内容进行加密,并将链接放入它使用 Nodemailer 发送的电子邮件中。
- 电子邮件已成功发送。
- 用户转到他们的电子邮件并单击链接。
- 单击链接后,Express 从查询参数中获取令牌,解密和解码令牌,并创建一个新用户。
以上所有工作都可以,但这是我卡住的地方。我希望用户被重定向回 Ember 前端,并自动登录。这是我坚持的一点。这是服务器代码:
我能够成功重定向回来,但我无法在我的 ember 代码中捕获 json 数据,而且我不确定在 Ember 中的何处或如何在给定场景中调用登录操作。
我有一种感觉,我的方法可能是错误的?因为电子邮件验证是很常见的事情。此外,我宁愿不必让用户多次输入他们的表单信息。
javascript - Using JsonWebToken authorization header to fetch images
I have an api where you need to have a valid json web token to upload an image:
For example, I make a post (with the Authorization header to this url) to upload a photo:
http://localhost:3000/api/account/events/54f9b55254fb9f32306a26dd/sponsors/54fdb4212f67981b1f6a8665/logo
If I want to fetch an image I'll do a GET request to the same url, however, this won't work when using JWT because I can't send an Authorization header when fetching an image.
Is there a solution? The image cannot be made public until the user authorises it.
authentication - JWTSecurityTokenHandler.ValidateToken() 什么时候真正有效?
我正在尝试创建一个令牌验证方法,如果 JWT 令牌基于签名有效,则该方法返回 true。我不认为我真的需要验证令牌中的所有内容,但是在调用 ValidateToken() 之后,真正表示令牌有效的是什么?存在原则吗?out 引用的令牌包含某些值?不确定何时从此方法返回 true。
asp.net-web-api - JwtAuthForWebAPI 中的 SignatureVerificationFailedException
我已经连接了JwtAuthForWebAPI nuget 项目,但我无法验证生成的令牌。我最终得到一个 500 错误。我在令牌生成和配置 JwtAuthenticationMessageHandler 时使用完全相同的键值。
这是生成令牌的代码:
这是注册身份验证处理程序的代码:
这是我得到的错误:
这是一个示例 JSON 令牌:
有趣的是,我可以使用http://jwt.io使用我的密钥验证令牌。我怀疑它可能与 JwtAuthForWebAPI 库有关,它与 System.Identity JWT 库正在生成的东西不同?
authentication - 如何在 tymondesigns/jwt-auth 中使用令牌刷新?
Laravel5 中的案例。
当我收到提示“令牌过期”时,如何刷新并获取新令牌?
我一直在使用JWTAuth::refresh($oldToken)
,但它不起作用。
什么是最好的方法?
session - 当我们有客户端会话时,为什么我们需要 JWT?
我了解 JWT 是无状态令牌,用于存储有关客户端声明的签名信息,并通过 Authorization HTTP 标头传递给服务器。
我的问题是,当我们已经有客户端会话( https://github.com/mozilla/node-client-sessions )时,为什么还需要 JWT ?客户端会话在概念上是相同的。它们是包含签名信息的 cookie,经过验证意味着 cookie 没有经过修改。此外,客户端会话存储在 cookie 中并通过 Cookie HTTP 标头传递。只是用不同的词是一样的。我错了吗?
那么,为什么 JWT 还存在呢?我可以理解,也许重点是标准化身份验证令牌的工作方式,但是没有基于会话 ID 的标准,我们相处得很好(每个实现都以自己的方式做事)。另外,为什么 JWT 不使用 cookie 作为传输手段。使用 cookie,您不需要为每个请求显式发送正确的标头(简化 Ajax 请求)。
我错过了什么吗?