我想更改 ASP.NET Core 3.X MVC 中 .AspNetCore.Antiforgery.xxx 的默认 Cookie 名称,但我似乎没有找到任何相关文档。还可能吗?
我发现唯一可以改变的是:
services.Configure<CookiePolicyOptions>(options =>
{
options.CheckConsentNeeded = context => true;
options.MinimumSameSitePolicy = Microsoft.AspNetCore.Http.SameSiteMode.Strict;
options.ConsentCookie.Name = "GDRP";
});
AddAntiforgery
来实现。以下是取自 docs 并进行相应修改的示例:
services.AddAntiforgery(options =>
{
options.Cookie.Name = "YourCookieName";
});
docs 中有一个有用的页面,其中列出了内置的 ASP.NET Core cookie 以及每个配置的来源。
适用于 .NET 5.0 及更高版本
在
ProjectRoot/Startup.cs
班
public void ConfigureServices(IServiceCollection services)
{
// ...
services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme)
.AddCookie(options =>
{
options.Cookie.Name = "your_cookie_name";
});
// ...
services.AddControllers();
}
好的,已经找到了,对于那些正在寻找的人
services.AddAntiforgery(options =>
{
options.Cookie.Name = "my-x-name";
options.HeaderName = "my-x-name";
});
它将接受任何字符串,需要验证它是否有效或者是否需要更新其他内容......