【发布时间】:2021-09-21 18:46:14
【问题描述】:
我正在寻找一种通过 JWT cookie 而不是通过授权标头对用户进行身份验证的方法。
我一直在四处寻找,但找不到我设法使用的答案。
目前我正在像这样进行身份验证:
services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
.AddJwtBearer(opt =>
{
opt.TokenValidationParameters = new TokenValidationParameters
{
ValidateIssuerSigningKey = true,
IssuerSigningKey = key,
ValidateIssuer = false,
ValidateAudience = false,
ValidateLifetime = true,
ClockSkew = TimeSpan.Zero
};
opt.Events = new JwtBearerEvents
{
OnMessageReceived = context =>
{
var accessToken = context.Request.Query["access_token"];
var path = context.HttpContext.Request.Path;
if (!string.IsNullOrEmpty(accessToken) && (path.StartsWithSegments("/chat")))
{
context.Token = accessToken;
}
return Task.CompletedTask;
}
};
});
什么等同于以相同的方式进行身份验证,但使用名为 JWT 的 cookie?
【问题讨论】:
-
您好@אורי זבידה,我的回答是否帮助您解决了您的问题?如果是,请您接受作为答案吗?如果没有,请您跟进让我知道吗?参考:@987654321 @.谢谢。
标签: asp.net-core authentication cookies