停止HSTS HTTPS强制执行

时间:2015-05-28 15:16:21

标签: c# asp.net ssl https hsts

所以我把它放在我的Global.asax.cs中以使用HSTS强制执行HTTPS

Response.AddHeader("Strict-Transport-Security", "max-age=0");

现在,问题在于此强制执行是基于我的应用程序中的设置决定是否强制执行,并且当它设置为不强制执行时,它仍然是强制执行。如何让它清除并停止重定向?

我尝试添加一个我放

的其他内容
<ruleset version="1.0+">
  <rule>
    <id title="--My Java 8 compatible application--">
        <certificate hash="--mycertificatehash--"/>
    </id>
    <action permission="run" version="1.8.0_45" force="true"/>
  </rule>
  <rule>
    <id>
        <certificate hash="--mycertificatehash--"/>
    </id>
    <action permission="run" version="1.6.0_31" force="true"/>
  </rule>
  <rule>
    <id />
    <action permission="default"/>
  </rule>
</ruleset>

将max-age设置为0无效。我该如何删除它?似乎max-age还没有工作(我正在使用chrome),因为它超过300秒(5分钟)

编辑:我现在尝试在IE中加载并且它没有进行重定向,我尝试进入chrome设置并删除条目但仍然没有。

1 个答案:

答案 0 :(得分:1)

将HSTS标头发送到用户的浏览器后,它将始终使用https。 它是根据域名和可选的子域名指定的。

一旦浏览器访问了您的域并收到了HSTS标头,它将始终使用https(它已被强制执行)。 现在你无法通过服务器响应来解除它。

因此,最好在Web应用防火墙(WAF)级别添加HSTS和重定向标头,并且只有 ,才能通过https提供域中的所有资源。

https://www.chromium.org/hsts/ https://blog.cloudflare.com/enforce-web-policy-with-hypertext-strict-transport-security-hsts/