Cookie認証で.NETCore2.0を使用しています。
私の構成は次のようになります。
services
.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme)
.AddCookie(options =>
{
options.ExpireTimeSpan = TimeSpan.FromDays(1);
options.SlidingExpiration = true;
options.Cookie.Name = "authtoken";
});
許可されていないコントローラーにアクセスすると、にリダイレクトされます /Account/Login
.NET Core 1.1では、を設定することでこれを構成できましたAutomaticChallenge = false
。
.NET Core 2.0でこれを構成するにはどうすればよいですか?
コントローラがHTTP403を返すようにしたいだけです。
残念ながら、フラグは適切に削除されています。ただし、startup.csのConfigureServicesメソッドで、「RedirectToLogin」イベントをそのようにオーバーライドできます。
services.AddAuthentication("CookieAuthenticationScheme")
.AddCookie(options => {
options.Events.OnRedirectToLogin = (context) =>
{
context.Response.StatusCode = 401;
return Task.CompletedTask;
};
});
アップグレードで行き詰まった場合は、ここでさらにいくつかのヒントをカップルしてください:https://dotnetcoretutorials.com/2017/09/16/cookie-authentication-asp-net-core-2-0/
これは、あなたが行っているajax呼び出し(または一般的にはWeb API)であるためだと思いますか?MSはJWTがWebAPI用であり、CookieがMVC専用であることに苦労しているようです。したがって、なぜ強制ログインページ。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加