不同级别的Web服务安全性

时间:2018-02-01 10:44:44

标签: java web-services webservice-client

我刚刚开始使用SOAP Web服务,偶然发现了Web服务安全性。

我需要根据以下用例了解两件事: -

假设有一个Web服务接受国家/地区名称作为请求,并返回状态列表作为响应。

基于我上面的简单用例,什么是传输级安全性和消息级安全性。它们有何不同?

1 个答案:

答案 0 :(得分:2)

  

基于我上面的简单用例,什么是传输级安全性和消息级安全性。它们有何不同?

如何保护传输渠道和数据有多种选择。这一切都取决于所需的安全措施。

SOAP / WSDL有一个扩展WS-Security,它定义了如何保护通信的多个标准选项。请注意,并非所有框架都支持所有选项,我真的很喜欢使用一些成熟的Web服务框架(CXF,Axis2,..)来实现Web服务安全性。你不想自己做。

传输级安全性

基本是TLS / SSL(简单或带有客户端证书)。此安全层绑定到HTTP传输层,并且通常假定为已授予,因此未在WSDL本身中进行配置。

  

这是否意味着如果实现传输安全性然后在浏览器中打开wsdl文件我必须提供用户名密码

我假设你在谈论HTTP基本身份验证。它是其中一个选项(恕我直言,可怜的一个,它与HTTP传输层紧密相连)

您也可以使用UsernameToken选项。它看起来与基本身份验证类似 - 在SOAP标头中有用户名和密码(或摘要),因为我认为这个扩展可以作为WSDL或安全策略定义的一部分进行定义和实施。

消息级别安全性

在此级别下,我们会考虑对邮件进行签名和/或加密。