我知道用SSL保护所有页面会减慢网站的速度,并增加服务器资源的开销。
我也看到很多其他网站只保护他们的login和注册页面,我也想在我的服务器上运行apache。
为什么仅仅保护input用户密码的网页而不是整个网站是不好的做法呢?
此外,而不是使用像https://mysite.com/login.php这样的东西,我也许应该以这种方式更改为https: https://secure.mysite.com/login.php : https://secure.mysite.com/login.php ?
Cookie安全性是我指出的主要方法。
login安全login页面的用户会为他们的会话获取Cookie,对吗? 然后cookie以纯文本forms传输给有线人员( Firesheep )拦截和窃取会话。
谈判时间和来自SSL的CPU负载方面还有额外的开销,但是却很less。 如果您的网站上有任何敏感信息,那么只要在任何地方使用SSL即可。
另见: 这个问题
我知道用SSL保护所有页面会减慢网站的速度,并增加服务器资源的开销。
这是真的。 你不应该随便扔SSL。 你应该做出明智的决定。 尽pipeSSL确实带来了安全方面的好处,但确实是以性能为代价的。 重要的是要记住,您始终可以在性能问题上抛出技术解决scheme,所以我会先确保您对安全性感到满意,然后尝试处理可能遇到的任何性能问题。
主要的一点是, 如果SSL解决了您的安全问题,请继续使用它 。
为什么仅仅保护input用户密码的网页而不是整个网站是不好的做法呢?
不是。 不一定。 你真的需要看看你试图保护的数据,以及你想要阻止的攻击。
需要考虑的共同领域:
有时你可能只想保护你网站的某些部分,比如login页面和任何成员页面。 您的网站的公共部分可能不需要SSL,使他们的HTTP可以给你相当的性能优势。
有些人在整个网站上实施SSL,因为它简化了事情 。
当然,实施SSL可能会非常棘手,有时尝试在一个页面上使用SSL而不是另一个页面可能意味着更多的工作。 整个站点上的SSL有助于未来certificate它,复杂地削减开发人员,可以避免错误和错误消息给用户(或更糟糕的还是意外地通过HTTP暴露敏感数据)。
此外,而不是使用像https://mysite.com/login.php这样的东西,我也许应该以这种方式更改为https: https : //secure.mysite.com/login.php ?
用PHP实现login(和安全)的方法有很多,但是在这里没有足够的细节来安全地评论。 你应该首先概述你想要达到的目标,然后概述你将如何去做,然后你可以开始考虑替代品的优缺点。
SSL会带来相当多的额外处理时间。 对于低带宽的站点,SSL所需的额外处理并不是真正明显的。 但是对于Facebook,Twitter和Flickr等stream量较大的站点来说,由SSL造成的负载非常重,以至于不得不使用SSLencryption/解码硬件。
所以基本上是这样的,最小化使用SSL的页面数量是有意义的。 这就是为什么你经常看到银行网站只通过https保护实际的帐户页面。 主页/login页面通常是纯旧的http。
另一方面,除非你真的是像Twitter或Facebook或Gmail的网站,否则担心这是一个不成熟的优化。 首先尽可能简单,如果可以的话。 请注意这个问题,并注意当您的网站最终stream量很大时的升级策略。
我的老板有一个说法:这是一个快乐的问题。 首先解决没有足够用户的悲伤问题,那么你会很高兴有一个问题,需要你重构你的架构。