【发布时间】:2021-12-16 18:48:26
【问题描述】:
我在 SecurityHeaders.com 上运行了扫描,它显示 cookie 没有前缀并且我不知道如何向 cookie 添加前缀的警告。谁能告诉我如何在 asp.net core 中做到这一点? Screenshot of website scan result
这是 Startup.cs 类中的 ConfigureServices 方法
public void ConfigureServices(IServiceCollection services)
{
services.Configure<CookiePolicyOptions>(options =>
{
options.CheckConsentNeeded = context => false;
options.MinimumSameSitePolicy = SameSiteMode.None;
options.Secure = CookieSecurePolicy.Always;
});
services.AddAuthentication(sharedOptions =>
{
sharedOptions.DefaultScheme = CookieAuthenticationDefaults.AuthenticationScheme;
sharedOptions.DefaultChallengeScheme = OpenIdConnectDefaults.AuthenticationScheme;
})
.AddAzureAdB2C(options => Configuration.Bind("AzureAdB2C", options))
.AddCookie();
services.AddMvc()
.SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
services.AddDistributedMemoryCache();
services.AddSession();
}
这里是配置方法
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
app.UseExceptionHandler("/Error");
app.UseHsts();
app.UseHttpsRedirection();
app.UseStaticFiles();
app.UseCookiePolicy();
app.UseAuthentication();
app.UseSession();
app.UseMvc(routes =>
{
routes.MapRoute("home", "{action=Index}",
defaults: new { controller = "Home" });
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
});
}
【问题讨论】:
-
你是如何设置cookie的?
-
我正在使用 cookiepolicyoptions 从启动类中的 configureservices 方法配置它,然后在 configure 方法中添加 usecookiepolicy。
-
请包含该代码。
-
请提供足够的代码,以便其他人更好地理解或重现问题。
标签: c# asp.net-core cookies setcookie