首页 > 解决方案 > 在 Start.cs 中添加 UseHsts() 有什么意义

问题描述

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

我一直不太明白它的意义所在。这是否意味着只是为应用程序执行的每个请求添加一个标头?如果我不使用该标题会出现什么问题?

另外,我注意到,当我尝试查找 Core 2.2(上面的链接)时,我被重定向到 Core 2.1,并指出UseHsts()在以前的版本中不存在。这是否意味着它已经过时或正在使用隐藏魔法的默认值?

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

解决方案


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

参考https://www.chromium.org/hsts

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


推荐阅读