我刚刚开始使用SOAP Web服务,偶然发现了Web服务安全性。
我需要根据以下用例了解两件事: -
假设有一个Web服务接受国家/地区名称作为请求,并返回状态列表作为响应。
基于我上面的简单用例,什么是传输级安全性和消息级安全性。它们有何不同?
答案 0 :(得分:2)
基于我上面的简单用例,什么是传输级安全性和消息级安全性。它们有何不同?
如何保护传输渠道和数据有多种选择。这一切都取决于所需的安全措施。
SOAP / WSDL有一个扩展WS-Security,它定义了如何保护通信的多个标准选项。请注意,并非所有框架都支持所有选项,我真的很喜欢使用一些成熟的Web服务框架(CXF,Axis2,..)来实现Web服务安全性。你不想自己做。
传输级安全性
基本是TLS / SSL(简单或带有客户端证书)。此安全层绑定到HTTP传输层,并且通常假定为已授予,因此未在WSDL本身中进行配置。
这是否意味着如果实现传输安全性然后在浏览器中打开wsdl文件我必须提供用户名密码
我假设你在谈论HTTP基本身份验证。它是其中一个选项(恕我直言,可怜的一个,它与HTTP传输层紧密相连)
您也可以使用UsernameToken选项。它看起来与基本身份验证类似 - 在SOAP标头中有用户名和密码(或摘要),因为我认为这个扩展可以作为WSDL或安全策略定义的一部分进行定义和实施。
消息级别安全性
在此级别下,我们会考虑对邮件进行签名和/或加密。