4

我正在使用 asp.net web api,并且正在使用基本身份验证来授权我的用户。我在所有需要授权的调用上都需要 HTTPS,但是对于我不需要授权(即注册)的所有调用,我是否也应该在 https 中进行它们以保持一致性?如果我不使用 https 进行这些调用,是否会导致性能提升等。

4

3 回答 3

3

如今,HTTPS 的开销对于大多数系统来说都是微不足道的(请参阅SSL 会施加多少开销?)。我到处都是 HTTPS 的粉丝,因为它端到端更安全,实施起来几乎没有成本,但你的里程可能会有所不同。如果您担心它可能对性能产生影响,请实施它,然后分析您的应用程序,看看有什么区别

于 2013-04-16T18:06:21.830 回答
2

Http由于 https 中的加密增加了请求和响应的大小,并且加密和解密需要额外的处理,因此提供了更高的性能。今天的机器可以非常快速地处理https开销,而没有任何明显的性能下降。安全性比性能提升更重要,如果您必须通过用户名/通过注册,那么这可能是对安全性的破坏。

于 2013-04-16T18:05:58.460 回答
1

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

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

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

于 2013-04-16T18:19:55.293 回答