ssl - 为什么 Web 服务使用 WS-Security 而不是使用传输层安全性?

标签 ssl ws-security

我能想到的唯一原因是需要额外的安全层,因为 Web 服务运行在应用层协议(protocol)之上。这是否意味着需要额外的安全层?

最佳答案

许多刚接触 Web 服务的人将 SOAP 视为通过 HTTP 在两个端点之间交换消息的一种方式。通过 HTTP,可以对调用者进行身份验证、对消息进行签名并对消息的内容进行加密。这使得消息在几个方面是安全的:调用者是已知的,消息的接收者可以验证消息在传输过程中没有改变,并且监视有线流量的实体无法弄清楚正在交换什么数据。然而,对于那些希望通过 SOAP 消息传递来解决更大问题的人来说,仅基于 HTTP 的安全性是不够的。许多更大的问题涉及沿着比请求/响应更复杂的路径发送消息,或者通过不涉及 HTTP 的传输方式发送消息。消息和调用者的身份、完整性和安全性需要在多个跃点上得到保护。沿途可能会使用一个以上的加密 key 。将跨越信任域。 HTTP 及其安全机制仅解决点对点安全问题。更复杂的解决方案需要端到端的安全性。WS-Security 解决了如何在多点消息路径上维护安全上下文的问题。

摘自 http://msdn.microsoft.com/en-us/library/ms977327.aspx

关于ssl - 为什么 Web 服务使用 WS-Security 而不是使用传输层安全性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17116967/

相关文章:

apache - 在 .htaccess 文件中使用条件和变量

security - GRPC Java 的 SSL 错误

c# - 如何从 .p12 文件生成 BinarySecurityToken (X509PKIPathv1)

java - 需要帮助 java 到 C++ ssl 套接字

python - 索尼生活日志 API : SSL Handshake failure

web-services - SoapUI中的相互证书认证

c# - 用于 Web 服务的 WCF 客户端,具有 WS-Security、签名 header 、身份验证 token 和正文加密

apache - Weblogic 中 Apache CXF 的 Java 安全异常未找到提供程序 : ApacheXMLDSig

c# - 使用 WCF 在客户端中获取签名的 SOAP 消息

python - 如何找到 : urllib2. URLError : <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl. c :590)? 的根本原因