您认为通过C#Web服务连接两台服务器的最佳方式是什么? 我不想使用SSL,因为它消耗了很多服务器CPU,我不想在机器上添加更多负载。而且,它的速度较慢。
也许OAuth2,WS-Security或任何自定义服务(如发送令牌(nonce + timestamp))可能会阻止重发攻击。谢谢你的任何建议。
答案 0 :(得分:2)
我的赌注仍然是SSL。使用客户端证书来验证发出请求。它正在大规模地用于保护敏感信息交换,尤其适用于防范MITM。
SSL的开销很可能不会显着影响您的CPU使用率,您测量过吗?如果你正在处理大量的小请求,那么握手可能是一个问题,但如果我理解正确你只有两台服务器,那么开销(如果我对SSL / TLS的理解是正确的)将在整个生命周期内摊销SSL会话。
简短回答:添加SSL不太可能会对您的CPU使用产生不利影响,但您应该在得出结论之前始终对您的方案进行概要分析。
更多阅读
答案 1 :(得分:0)
WS-Security具有相互身份验证和邮件签名。此模式要求发送服务器具有接收方的证书(公共ky)。然后,发件人可以通过验证签名来检查响应是否未被篡改,并且可以检查签名证书用于签署响应是否是接收者的正确响应。