使用 AspNetCore RC2(现在是 v1)...混合使用 JWT bearer tokens以及用于身份验证和授权的身份中间件。完成教程(链接)并获得使用 WebAPI 的 token 身份验证和授权。
我需要 Startup.cs 配置中的“app.UseIdentity()”才能使用身份框架来管理用户和角色。问题是:当匿名用户尝试访问带有 [Authorize] 的端点时,它会导致 WebAPI 重定向到“帐户/登录”,而不是简单地返回 401(未经授权)状态。
我见过人们谈论如何在使用 cookie 身份验证时停止此操作,但这没有帮助,因为我只使用 token 。
任何人都可以指导我如何告诉身份中间件停止重定向未经授权的尝试吗? (如果需要代码,请告诉我。):)
最佳答案
这似乎已停止重定向(Startup.cs,ConfigureServices 方法):
services.Configure<IdentityOptions>(options =>
{
options.Cookies.ApplicationCookie.AutomaticAuthenticate = false;
options.Cookies.ApplicationCookie.AutomaticChallenge = false;
options.Cookies.ApplicationCookie.LoginPath = PathString.Empty;
options.User.RequireUniqueEmail = true;
options.SignIn.RequireConfirmedEmail = true;
});
关于c# - 如何阻止身份中间件在 401 上重定向?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38084391/