stk*_*hng 5 asp.net authentication asp.net-core
我正在使用带有cookie身份验证的.NET核心2.0.
我的配置如下所示:
services
.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme)
.AddCookie(options =>
{
options.ExpireTimeSpan = TimeSpan.FromDays(1);
options.SlidingExpiration = true;
options.Cookie.Name = "authtoken";
});
Run Code Online (Sandbox Code Playgroud)
当我访问未经授权的控制器时,我被重定向到 /Account/Login
在.NET Core 1.1中,我可以通过设置来配置它
AutomaticChallenge = false.
如何在.NET Core 2.0中配置它?
我只是希望我的控制器返回HTTP 403.
Min*_*ata 12
不幸的是,这个旗帜已被完全删除.但是,您可以在startup.cs的ConfigureServices方法中覆盖"RedirectToLogin"事件
services.AddAuthentication("CookieAuthenticationScheme")
.AddCookie(options => {
options.Events.OnRedirectToLogin = (context) =>
{
context.Response.StatusCode = 401;
return Task.CompletedTask;
};
});
Run Code Online (Sandbox Code Playgroud)
如果您遇到升级问题,请在此处添加更多花絮:https://dotnetcoretutorials.com/2017/09/16/cookie-authentication-asp-net-core-2-0/
我是否正确地认为这是因为它是您正在进行的ajax调用(或者通常是Web API?).看起来MS已经很难用JWT用于Web API,而Cookie只用于MVC.因此为什么强制登录页面.
| 归档时间: |
|
| 查看次数: |
3263 次 |
| 最近记录: |