我已经尝试了几天在我的 .net core 2.1 Web 服务中使用 jwt 令牌。令牌因 -SecurityTokenInvalidSignatureException: IDX10503: Signature validation failed.异常而被拒绝。我的设置很简单: services .AddAuthentication(JwtBearerDefaults.AuthenticationScheme) .AddJwtBearer(configureOptions => { configureOptions.ClaimsIssuer = "http://localhost/"; configureOptions.TokenValidationParameters = new TokenValidationParameters { ValidateIssuerSigningKey = true, IssuerSigningKey = new SymmetricSecurityKey(Convert.FromBase64String("zeey+h0M8mvWSR9HYKlNns+....")), ValidateIssuer = true, ValidIssuer = "http://localhost/", ValidateAudience = true, ValidAudience = "efb4f12d020b434c9b531af96263b3fa", }; });将我收到的令牌放入https://jwt.io/,发现签名有效:但是我的网络服务仍然拒绝确认令牌。我究竟做错了什么?
1 回答
喵喵时光机
TA贡献1846条经验 获得超7个赞
我终于找到了我的问题的答案:
我的钥匙错了。但即使使用正确的密钥,我仍然遇到同样的错误......
在构建 时
SymmetricSecurityKey
,我不得不使用Encoding.Unicode.GetBytes(...)
而不是Encoding.ASCII
orEncoding.UTF8
。我仍然遇到 jwt.io 的问题。我猜这个网站不再是验证令牌的好地方。
- 1 回答
- 0 关注
- 832 浏览
添加回答
举报
0/150
提交
取消