DotNETWeekly-io / DotNetWeekly

DotNet weekly newsletter
MIT License
198 stars 3 forks source link

【文章推荐】ASP.NET Core 中的 HSTS #686

Closed gaufung closed 1 day ago

gaufung commented 2 weeks ago

https://khalidabuhakmeh.com/what-is-hsts-and-why-is-it-in-my-aspnet-core-app

gaufung commented 4 days ago

image

ASP.NET Core 应用程序中,有一个中间件是 app.UseHsts(), 那么这个中间件是做什么的呢?简单来讲就是强制客户端的请求是使用 HTTPS 协议,如果是 HTTP 协议访问,就重定向到 HTTPS 协议。主要包含以下几点内容

体现在响应头中是

`Strict-Transport-Security:` `max-age=63072000; includeSubDomains; preload`

ASP.NET Core 的代码是这样配置的

builder.Services.Configure<HstsOptions>(o =>
{
    o.Preload = true;
    o.MaxAge = new TimeSpan(730 /* 2 years */);
    o.IncludeSubDomains = true;
});