我正在使用aspnet核心WEB Api應用程序。當令牌過期或者令牌未通過時,獲取404錯誤而不是401,而不是
雖然登錄我通過SignInManager這樣驗證用戶。
await _signInManager.PasswordSignInAsync
之後,我正在爲該用戶生成jwt令牌。
我在控制器方法中添加了[Authorize]標籤。
當我用令牌或無效令牌發送請求時,出現404錯誤而不是401錯誤。
這是startup.cs文件
var tp_options = new TokenProviderOptions
{
Audience = xyz,
Issuer = xyz,
SigningCredentials = new SigningCredentials(signingKey, SecurityAlgorithms.HmacSha256),
};
app.UseJwtBearerAuthentication(new JwtBearerOptions
{
AutomaticAuthenticate = true,
AutomaticChallenge = true,
TokenValidationParameters = tokenValidationParameters,
AuthenticationScheme = JwtBearerDefaults.AuthenticationScheme,
});
app.UseStaticFiles();
app.UseFileServer();
app.UseIdentity();
我已經增加了一個 「app.UseIdentity();」。這是signInManger驗證登錄所必需的。
如果我刪除「app.UseIdentity()」我收到401錯誤,但signInManager越來越例外「無驗證處理程序被配置爲處理方案:Identity.Application」
我如何能實現這兩個功能這裏。我想同時使用JWT令牌驗證和ASP IDENTITY。