2010-09-23 53 views
5

我目前正在为想要简单的方式向客户发送文件的公司构建一个基于Web的文件上传/下载中心。仅在登录时使用ssl?或整个网站?

我的问题是围绕网站的哪些部分确实需要进行SSL加密。是否仅对加密登录表单进行加密,而将其他部分(如文件传输过程)保留未加密?

这些员工中的一部分员工是在线路嗅探器频繁出入的外国酒店工作。我一定会登录SSL登录表单,以防止窃取登录信息和删除文件等。但是,由于文件不敏感(在此系统上没有使用敏感文件),与SSL相关的速度成本是否会严重影响上传/下载速度?

感谢您的任何意见!

回答

8

任何要求用户进行身份验证的请求都应通过HTTPS提供。换句话说,任何包含会话标识符的请求都必须加密。

在认证过程中,大多数系统设置一个cookie来识别后续请求中的用户。如果通过未加密的频道发送会话标识符,则中间人可以窥探此会话标识符,就像他们可以窥探密码一样。如果它们包含这个被盗的会话标识符,服务器就无法区分攻击者伪造的请求和实际用户的请求。

相对于其他操作,SSL的开销通常较小,即使如此,它主要是在SSL握手的密钥协商阶段。通过确保服务器设置为使用允许在后续请求中跳过协商的SSL会话,可以避免这种情况。

+0

优秀的回复,谢谢。 – Dan 2010-09-23 17:56:24

+1

对于apache,最后一段中提到的优化是由'SSLSessionCache'配置指令启用的。 – caf 2010-09-24 00:55:31

0

我会SSL任何有“敏感”的数据。

对于您要传输的文件,这可能是从员工姓名到客户,或者像电子邮件地址这样的简单内容。

这些事情应该总是安全的。

其他任何东西都不需要安全。

规则因案例而异,但任何有个人信息/金钱的应该始终是安全的。

+0

是真实的,永远不会知道员工将放入文件中。 – Dan 2010-09-23 16:54:18

0

你已经SSL'的登录,所以反对SSL'整个网站的唯一论点是一个可能的请求服务速度命中。

如果您正在研究对速度不敏感的应用类型,那么在保护整个站点方面没有太大的伤害。好处(任何敏感数据都是SSL'd)大于成本,