首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SOAP安全头与SOAP头的区别

SOAP安全头与SOAP头的区别
EN

Stack Overflow用户
提问于 2016-05-12 13:30:36
回答 1查看 7.9K关注 0票数 1

SOAP安全头(WSSE)和一般SOAP头之间有什么区别?如果我只使用简单的soap头来发送我的凭据呢?

为什么我要用这个:

代码语言:javascript
复制
<soapenv:Header>
  <wsse:Security  xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
     <wsse:UsernameToken wsu:Id="UsernameToken-1">
        <wsse:Username>login</wsse:Username>
        <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">XXXX</wsse:Password>
     </wsse:UsernameToken>
  </wsse:Security>

也不应使用这种方法:

代码语言:javascript
复制
<S:Header>
    <Username xmlns="http://ws.enterprise.com/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" SOAP-ENV:actor="http://schemas.xmlsoap.org/soap/actor/next">
        Username text
    </Username>
</S:Header>

提前感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-05-17 01:40:33

两者都可以满足传递用户名和密码的功能需求。

两者都同样简单。

一种是开放标准 (实际上是一个小的在一组,它为端到端SOAP消息的安全需求提供了深思熟虑的标准,包括身份验证、消息机密性、不可否认性等)。另一个是特定于您的应用程序;专有的,但可能是您所需要的。

使用WS的可能优点--安全性:

  • 已经记录了(为您减少了工作量)。只需记录您使用WS-Security UsernameToken和客户端可以谷歌的其他)
  • 已经实现了(减少了对用户的工作量,甚至可能减少了web服务实现的工作量)。许多库框架(Java: Apache WSS4J、Apache CXF、JavaScript:Node.js、Python:苏打)、JavaEE应用服务器(如IBM WebSphere、甲骨文WebLogic、RedHat JBoss AS和其他企业平台(如.NET ))都有预先构建的技术,在许多情况下只有配置才能用这个特定的开放标准(WS-安全UsernameToken)保护web服务。
  • 还有成长的空间。这只是许多相关标准的一部分。希望/需要通过用户名/密码对某些客户端进行身份验证,而其他客户端则通过数字签名进行身份验证?那里有一个相关的标准。不需要发明一个,它不仅包括所需的XML语法,还可以考虑各种攻击向量。开放的标准已经有了很多人对它们进行审查。

可能存在的不利因素:

  • 学习曲线:选择使用预先构建的东西意味着您(和您的客户)必须在一定程度上理解它。
  • 高估了一些边缘病例,。我在这里伸展了一下。假设这是一个原型web服务,从未计划用于商业或生产用途。构建一个web服务和一个web服务客户端?丢弃的代码--你只是不想在一段时间内保持“大范围开放”?勇敢点儿。
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37188458

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档