Security 什么';这是确保页面安全的干净/简单的方法吗?

Security 什么';这是确保页面安全的干净/简单的方法吗?,security,forms,ssl,https,Security,Forms,Ssl,Https,假设您有一个收集和提交敏感信息的表单,并且您希望确保永远不会通过不安全(非HTTPS)方式访问该表单,那么您最好如何执行该策略?请看以下内容: 编辑:这从IIS的角度显示解决方案,但您应该能够为此配置任何web服务器。在IIS中?转到安全设置并点击“需要安全连接”。或者,您可以检查页面加载中的服务器变量并重定向到安全页面。如果您正在运行Apache,您可以在.htaccess中放入重写规则,如下所示: RewriteCond %{HTTPS} "off" RewriteRule /mypage.

假设您有一个收集和提交敏感信息的表单,并且您希望确保永远不会通过不安全(非HTTPS)方式访问该表单,那么您最好如何执行该策略?

请看以下内容:


编辑:这从IIS的角度显示解决方案,但您应该能够为此配置任何web服务器。

在IIS中?转到安全设置并点击“需要安全连接”。或者,您可以检查页面加载中的服务器变量并重定向到安全页面。

如果您正在运行Apache,您可以在
.htaccess
中放入
重写规则,如下所示:

RewriteCond %{HTTPS} "off"
RewriteRule /mypage.html https://example.com/mypage.html

我建议查看呈现表单的代码中的请求,如果它不使用SSL,则向https URL发出重定向

您还可以在Apache中使用重新布线规则重定向用户


或者,您不能通过HTTP提供页面,而只能将其保存在HTTPS站点的文档根目录中。

我认为最可靠的解决方案是只将代码保存在SSL文档根目录中。这将确保您(或将来的其他开发人员)不会意外链接到表单的非安全版本。如果您在HTTP和HTTPS上都有表单,您甚至可能不会注意到是否无意中使用了错误的表单

如果这不可行,那么我至少会采取两项预防措施。执行Apache URL重写,并检查代码以确保会话已加密—检查HTTP头