当前位置: 首页 > 知识库问答 >
问题:

如何在没有身份验证的情况下创建JWT令牌

越学义
2023-03-14
  • “laravel/框架”:“5.7.*”
  • “tymon/jwt认证”:“开发人员开发”

我正在尝试创建一个添加了自定义声明的JWT令牌,而不使用auth(这意味着我不希望从凭据创建令牌)。这是为了创建不需要登录的令牌,例如忘记/重置密码等。

  • 使用Tymon/JWTAuth(https://github.com/tymondesigns/jwt-auth)由于最新的Laravel存在问题,因此建议加载最新的dev(1.0.x-dev)。我尝试了以下代码,但没有成功:

公共静态函数getJwtToken

我收到一个错误:JWT有效载荷不包含所需的声明

我希望收到上面装载有效载荷的令牌。


共有2个答案

劳麒
2023-03-14

我刚刚遇到了同样的错误,并且能够通过更新生成的配置文件config/jwt.php中所需声明的列表来解决它。

...
'required_claims' => [
    'exp',
    'sub',
    ...
],
...

还要确保您已经运行了php artisan jwt:secret,或者提供了用于签名的密钥。

斜浩穰
2023-03-14

我通过注释'exp'required_claimsconfig/jwt.php中解决了这个问题:

.....
'required_claims' => [
   'iss',
   'iat',
   //'exp',
.....
],
 类似资料:
  • 我有一个JWT安全令牌,需要通过jwksendpoint进行验证。jwks中的数据如下所示: 我尝试了一个第三方api,但它看起来依赖于x5c密钥,这在我的案例中不存在。 我的代码是: 如何在没有x5c的情况下通过jwks验证JWT?

  • 我正在做一个项目,我正在使用一个gsm模块称为SIM800的设备。SIM800能够获取和发布请求。但是Firebase SDK不能安装在设备上,所以我不能做认证。该设备将访问Firestore数据库,获取和发送请求,读写数据。由于模块不能进行身份验证,我是否可以使用我在reuesting时生成的令牌? 如果这是可能的,我应该如何编写firestore安全规则?

  • 我试图通过Postman访问我的简单API调用。它不工作,但它是在浏览器工作。 警告:不建议在没有服务器身份验证的情况下建立SSL连接。根据MySQL 5.5.45+、5.6.26+和5.7.6+的要求,如果未设置显式选项,默认情况下必须建立SSL连接。为了符合不使用SSL的现有应用程序,verifyServerCertificate属性设置为'false'。您需要通过设置usessl=false

  • 我有一个Rest Spring BootAPI,当用户验证API返回令牌jwt时,我在浏览器中注意到该令牌出现在响应头中 如何通过Reactjs将此令牌存储在本地存储浏览器中? 我的请求代码如下所示:

  • 问题内容: 在我的Java EE6 REST服务上,我想使用身份验证令牌从移动设备登录,用户将发送其用户名,密码,服务器将发回令牌,该令牌将用于授权用户对给定的进一步请求时间。 我可以这样简单地自己创建令牌吗?(我想我不需要加密此令牌,因为我将使用HTTPS。) 还是有一种更标准的方式来创建我的令牌?也许它存在于API之一 问题答案: 您有效地提出的方案允许客户端无限制地访问您的服务。初始登录后,

  • 我正在开发一个具有自己的身份验证和授权机制的REST应用程序。我想使用JSON Web Tokens进行身份验证。以下是有效且安全的实现吗? < li >将开发一个REST API来接受用户名和密码并进行认证。要使用的HTTP方法是POST,因此没有缓存。此外,在传输时还会有安全SSL < li >在认证时,将创建两个JWTs访问令牌和刷新令牌。刷新令牌将具有更长的有效期。这两个令牌都将写入coo