无法自定义.net核心CSRF Coo​​kie路径

时间:2018-07-16 13:27:48

标签: .net-core asp.net-core-1.1

为了符合安全审核的要求,我们需要更改在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”不存在

0 个答案:

没有答案