2013-04-16 44 views
4

我正在使用asp.net web api,并且正在使用基本身份验证来授权我的用户。我需要HTTPS在所有需要授权的呼叫上,但对于我不需要授权(即注册)的所有呼叫,我应该只在https上执行,以保持一致性?有没有什么像性能增益等,如果我不使用https进行这些调用可能会导致。使我的所有方法都需要https一个好主意?

+0

不是一个真正的答案,但特洛伊亨特有一些关于一些事情要考虑的博客文章:http://www.troyhunt.com/2013/04/5-ways-to-implement-https-in.html – Slapout

回答

3

对于大多数系统来说,HTTPS现在的开销很小(请参阅How much overhead does SSL impose?)。我是HTTPS的忠实粉丝,因为它的端到端安全性更高,几乎没有任何实施成本,但是你的里程可能会有所不同。如果您担心它可能会对性能产生影响,请实施它,然后对您的应用进行配置,看看有什么不同之处

2

Http提供更多性能,因为https中的加密增加了请求和响应的大小,并且加密和解密需要额外处理。今天的机器非常快速地处理https,而没有任何明显的性能下降。 安全性更重要,然后几乎没有性能增益,如果您必须在注册中传递用户名/密码,那么它可能会违反安全性。

1

根据您的标签,我将假设这里可能会有一些AJAX 。如果事实确实如此,那么坚持单一访问方案会更好。否则会导致跨浏览器兼容性问题并可能引入安全漏洞。

除非你正在做类似传输大型媒体文件/流的事情,否则适度的性能提升可能不值得考虑。

注意:潜在漏洞超出了通过不安全连接发送敏感数据的明显情况。例如参见https://developer.mozilla.org/en-US/docs/Security/MixedContent

相关问题