有什么干净/简单的方法可以确保页面的安全性?

时间:2020-03-05 18:51:00  来源:igfitidea点击:

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

解决方案

回答

看看这个:http://www.dotnetmonster.com/Uwe/Forum.aspx/asp-net/75369/Enforcing-https

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

回答

在IIS中?转到安全设置,然后单击"需要安全连接"。或者,我们可以在页面加载中检查服务器变量,然后重定向到安全页面。

回答

如果我们正在运行Apache,则可以在.htaccess中放入一个RewriteRule,如下所示:

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

回答

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

我们还可以在Apache中使用重播规则来重定向用户。

或者,我们不能只是通过HTTP服务该页面,而只能将其保存在HTTPS站点的文档根目录中。

回答

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

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