1谢谢Kan的快速回复!您能否更详细地解释一下,为什么这不合理?如果我想知道客户端是谁,但我不想要一个安全通道。 - Allan Baker
如果您没有安全通道,那么任何人都可以窃取客户的身份,而您将无法确定是真正的客户还是窃取了客户身份的黑客。 - kan
4@kan,你的回答并不完全正确,请参考:https://dev59.com/31nUa4cB1Zd3GeqPXBJm - Kees C. Bakker
@KeesC.Bakker 为什么?你提到的问题只涉及WS-Security。WS不是一个Web浏览器。实现X.509的唯一方法是使用JavaScript,但我不确定它是否能正常工作,至少由于性能问题。而且不确定客户端如何向JavaScript提供客户端证书。 - kan
4虽然需要定制解决方案,但确实存在这样一个点。如果某人无法使用SSL(例如由于IP地址限制),则使用客户端证书仍可通过使用挑战加密和返回服务器的方式进行安全身份验证。该挑战使用用户的公钥进行加密,然后使用服务器的公钥进行加密并由客户端的私钥签名,从而在HTTP上实现安全身份验证。 - AJ Henderson