在Start.cs中添加UseHsts()有什么意义?

时间:2019-01-01 15:57:01

标签: c# asp.net-core .net-core asp.net-core-2.2

根据the docs,在配置中添加 UseHsts()会激活STS相关标头的中间件。

我从不完全明白这一点。除了向应用程序的每个请求添加标头之外,这还意味着什么吗?如果我不使用该标头怎么办?

此外,我注意到当我尝试在Core 2.2(上面的链接)中查找它时,我被重定向到Core 2.1,并带有 UseHsts()的注释。旧版本。这是否意味着它已经过时或正在使用隐藏魔术的默认值?

2 个答案:

答案 0 :(得分:2)

  

HTTP严格传输安全性(HSTS)允许站点请求始终通过HTTPS与它联系。 Google Chrome,Firefox,Safari,Opera,Edge和IE支持HSTS

引用https://www.chromium.org/hsts

  

HTTP严格传输安全性(HSTS)是一种Web安全策略机制,可帮助保护网站免受协议降级攻击和cookie劫持。它允许网络服务器声明网络浏览器(或其他符合要求的用户代理)应仅使用安全的HTTPS连接1与其进行交互,而绝不能通过不安全的HTTP协议进行交互。 HSTS是IETF标准的跟踪协议,在RFC 6797

中进行了指定

答案 1 :(得分:1)

如果使用的是TLS,则应启用此标志。注意:请确保您未在​​本地主机上启用它(如果您未在本地主机上使用TLS)。您将无法加载该网站。您需要使浏览器上的缓存无效。