|
首页
>> 帮助中心>> 服务器相关问题 |
|
|
在 IIS 10.0 版本 1709 中,管理员可以选择在站点级别启用 HSTS 和 HTTP 到 HTTPS 重定向。
HTTP 严格传输安全 (HSTS)指定的 HTTP 严格传输安全 (HSTS)允许网站将自己声明为安全主机并通知浏览器仅应通过 HTTPS 连接与其联系。HSTS 是一种可选的安全增强功能,它强制执行 HTTPS 并显着降低中间人类型攻击拦截服务器和客户端之间的请求和响应的能力。 HSTS 通过需要 Web 服务器和浏览器支持的策略强制使用 HTTPS。启用 HSTS 的 Web 主机可以在 HTTPS 响应中包含特殊的 HTTP 响应标头“Strict-Transport-Security”(STS)以及“max-age”指令,以请求浏览器使用 HTTPS 进行进一步通信。浏览器接收到标头,并在“max-age”指令指定的秒数内记住 HSTS 策略。在此期间,如果用户尝试访问同一个网站,但输入 http:// 或完全忽略了该方案,浏览器会自动将不安全的链接转为安全链接(https://)并建立 HTTPS 连接到服务器。一旦通过 HTTPS 收到响应,浏览器也会阻止用户“点击”任何安全警告(例如 有关无效服务器证书的警告)。为了利用 HSTS,浏览器必须至少查看一次 HSTS 标头。为了保护第一次连接到给定域的用户,HSTS 有一个单独的机制,可以将已注册域的列表预加载到开箱即用的浏览器中。
推荐解决方案 :URL 重写模块安装 URL 重写模块 并为具有 HTTP 和 HTTPS 绑定的单个网站配置重写规则。HTTP 到 HTTPS 的重定向可以通过入站规则指定,而将 STS 标头添加到 HTTPS 回复可以通过出站规则实现。该方案确保仅在HTTPS访问时发送标头。
<rewrite> <rules> <rule name="Redirect HTTP to HTTPS" stopProcessing="true"> <match url="(.*)" /> <conditions> <add input="{HTTPS}" pattern="off" /> </conditions> <action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="Permanent" /> </rule> </rules> <outboundRules> <rule name="Add the STS header in HTTPS responses"> <match serverVariable="RESPONSE_Strict_Transport_Security" pattern=".*" /> <conditions> <add input="{HTTPS}" pattern="on" /> </conditions> <action type="Rewrite" value="max-age=31536000" /> </rule> </outboundRules> </rewrite>
打印
|
|
| |