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

nestjs - NestJS 和 passport-local:AuthGuard('local') validate() 永远不会被调用

我已逐步遵循官方 Nest 文档( https://docs.nestjs.com/security/authentication ),但在使用 @AuthGuard('local') 或 @AuthGuard 时无法调用 validate() 方法(LocalAuthGuard) 登录操作。

如果我不使用那个保护装饰器,一切都会按预期工作(但我需要使用它来将我的令牌添加到请求对象中)。

auth.controller.ts

local.strategy.ts

auth.module.ts

PS:我已经阅读了所有与堆栈溢出相关的帖子(例如:NestJS' Passport Local Strategy "validate" method never called)但他们没有帮助我。

0 投票
0 回答
41 浏览

authentication - 如何在 NestJs 网关(网络套接字)中使用守卫?

在我的 NestJS API 中,我是 JWT 令牌,存储在 cookie 中以验证我的用户。

用户将不得不调用我的登录控制器:

验证用户名密码并用LocalAuthenticatedGuard用户填写请求,然后将 cookie 提供给客户端,并将与我的其他警卫针对任何进一步的请求进行验证:

及其相关策略:

这非常适合我的 post/get 方法。

但是现在我对网络套接字有一些需求,所以我尝试了以下方法:

但:

  1. 即使我没有连接,连接也会建立
  2. 用户未设置为我的请求

会是什么:

  1. 使用我的身份验证保护并接收匹配用户的方式?
  2. 对于进一步的消息,我是否应该在网关中保留一个 client.id <--> 我的用户的字典?或者有没有办法在每条消息中也接收用户?
0 投票
0 回答
38 浏览

node.js - Nest JS:TypeError:JwtStrategy 需要密钥或密钥?与注入令牌一起使用时

我想创建一个身份验证模块作为单独的节点包,以便我们可以将它重用于多个项目。

作为其中的一部分,我们希望通过 AuthLibModule 从主应用程序提供必要的配置。register() 将此参数作为配置提供。

并且传递的配置将使用注入令牌保存,以通过依赖注入使用它。

我们如何实现它?

AuthLib.module.ts

APP.MODULE.TS

jwt.strategy.ts

错误:

0 投票
0 回答
21 浏览

jwt - 无法将 Bearer Token 维护到 Nestjs 上的其他页面

我的 Nestjs 应用程序只能让 Bearer 令牌保持活跃 POSTMAN。当我得到谷歌身份验证数据返回时,它可以工作。这个捕获是 api/auth/google/redirect/?.....

在此处输入图像描述

但是如果我通过键入该网址转到 EDGE 或 CHROME 上的 api/auth/google/profile,

401 { statusCode: 401, message: 'Unauthorized' } 错误返回。它说没有身份验证令牌。

这是我的控制器的代码。此代码正在获取用户的数据。

这是我的控制器的代码,此方法用于从 google 获取用户并设置授权令牌。

没有身份验证令牌错误返回。如何将不记名令牌保留到另一个站点?

如果我使用邮递员,我可以像这样保留不记名令牌。

在此处输入图像描述

我的仓库在这里->> https://github.com/sksmsWKd/meta-test

只有邮递员可以访问/profile。

在此处输入图像描述