我考虑的是为整个网站使用 SSL,而不是只选择几个页面进行 HTTPS 访问。
这样做会有什么缺点?
我希望允许社交服务登录(例如 Facebook),但我们还将存储信用卡信息,这就是 SSL 至关重要的原因。这样还会有其他问题吗?
如果可能的话,现在强烈建议在 TLS(即 https)上运行整个网站。
开销问题已成为过去,对于较新的 TLS 协议来说,它不再是问题,因为它现在维护会话,甚至在客户端断开连接时缓存它们以供重用。在过去,情况并非如此。这意味着今天,您唯一需要进行公钥加密(CPU 密集型的类型)的时间是在建立连接时。因此,无论如何,当您拥有证书时,实际上并没有任何缺点。这意味着您不必在 http 和 https 之间来回发送人员,并且客户将始终在其浏览器中看到锁定标志。
发布后,这一话题引起了人们的额外关注火羊 https://en.wikipedia.org/wiki/Firesheep。您可能听说过 Firesheep 是一个 Firefox 插件,它可以让您轻松(如果您都使用相同的开放 wifi 网络)劫持其他人在 Facebook、Twitter 等网站上的会话。这种方法之所以有效,是因为这些网站仅有选择地使用 TLS,并且如果在站点范围内启用 TLS,这对他们来说不是问题。
因此,总而言之,在当前技术水平下,缺点(例如增加 CPU 使用)可以忽略不计,优点也很明显,因此通过 SSL/TLS 提供所有内容!这就是这些天要走的路。
Edit:正如其他答案中提到的,在没有 SSL/TLS 的情况下提供某些网站内容(如图像)的另一个问题是,客户/用户将收到非常烦人的“安全页面上的不安全内容”消息。
另外,如由三十点表示 https://stackoverflow.com/a/4515359/982259,您应该将人们重定向到 https 站点。您甚至可以启用使您的服务器拒绝非 ssl 连接的标志。
另一个编辑:正如指出的下面有评论 https://stackoverflow.com/questions/4515283/using-ssl-across-entire-site#comment4944857_4515338,请记住,SSL/TLS 并不是满足站点所有安全需求的唯一解决方案,还有很多其他考虑因素,但它确实为用户解决了一些安全问题,并且解决得很好(尽管有很多方法做一个中间人,即使使用 SSL/TLS)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)