为了符合安全审核的要求,我们需要更改在dotnet core 1.1上的Asp.net core网站上创建的cookie的路径
据我了解,Antiforgery中间件是使用.AddMvc()
自动注入的。
我正在尝试通过使用Startup.cs中的以下代码来覆盖Cookie路径
services.AddAntiforgery(options =>
{
options.CookieDomain = "somedefaultName.com";
options.CookieName = "X-CSRF-TOKEN-COOKIENAME";
options.CookiePath = "/Path";
options.FormFieldName = "AntiforgeryFieldname";
options.HeaderName = "X-CSRF-TOKEN-HEADERNAME";
options.RequireSsl = false;
options.SuppressXFrameOptionsHeader = false;
});
但是在登录到应用程序时出现以下错误。该方法用[ValidateAntiForgeryToken]
信息:
Microsoft.AspNetCore.Mvc.ViewFeatures.Internal.ValidateAntiforgeryTokenAuthorizationFilter [1] 反伪造令牌验证失败。所需的防伪cookie“ X-CSRF-TOKEN-COOKIENAME”不存在。 Microsoft.AspNetCore.Antiforgery.AntiforgeryValidationException: 所需的防伪cookie“ X-CSRF-TOKEN-COOKIENAME”不存在