当secretrokey不可用时在Nestjs中使用JwtStrategy

当secretrokey不可用时在Nestjs中使用JwtStrategy,jwt,passport.js,amazon-cognito,nestjs,passport-jwt,Jwt,Passport.js,Amazon Cognito,Nestjs,Passport Jwt,我正在尝试将AWS Cognito集成到我的Nestjs应用程序中,因为Nodejs应用程序不支持将secretroKey与AWS Cognito一起使用,我正在寻找一种使用secretroKeyProvider实现这一点的方法,但我需要帮助了解是否支持,以及如果支持,我如何实现 这是我目前实施的JWT战略: 从“passport jwt”导入{ExtractJwt,Strategy}; 从'@nestjs/passport'导入{PassportStrategy}; 从'@nestjs/com

我正在尝试将AWS Cognito集成到我的Nestjs应用程序中,因为Nodejs应用程序不支持将secretroKey与AWS Cognito一起使用,我正在寻找一种使用
secretroKeyProvider
实现这一点的方法,但我需要帮助了解是否支持,以及如果支持,我如何实现

这是我目前实施的JWT战略:

从“passport jwt”导入{ExtractJwt,Strategy};
从'@nestjs/passport'导入{PassportStrategy};
从'@nestjs/common'导入{可注射的,未授权的dexception};
从“/jwt.verify”导入{ClaimVerifyResult,handler};
从“/auth.service”导入{AuthService};
@可注射()
导出类JwtStrategy扩展了PassportStrategy(策略){
构造函数(专用只读authService:authService){
超级({
jwtFromRequest:ExtractJwt.FromAuthHeaderAsberToken(),
ignoreExpiration:对,
secretrokeyprovider:(u,令牌,完成)=>{
//这里的令牌是有效的
//令牌尚未过期
//在此处调用{handler}函数将返回有效的用户实体
//使用有效用户在此处完成的调用仍将导致未经授权的错误
返回令牌;
},
});
}
公共异步验证(
有效载荷:任何,
完成:(err:Error | null,result:ClaimVerifyResult)=>void,
) {
console.log('validating');
const userInfo=等待处理程序(有效负载);
如果(!userInfo){
返回完成(新的UnauthorizedException(),null);
}
完成(null,userInfo);
}
}

我可以进入
secretrokeyprovider
反馈,但我似乎无法调用
验证
函数。

你找到答案了吗?我也有同样的问题Hi Adam,是的,我在媒体上写了一篇关于它的文章:你找到答案了吗?我也有同样的问题Hi Adam,是的,我在媒体上写了一篇关于它的文章: