Web服务:要考虑的设计和安全注意事项?

时间:2011-05-10 07:38:38

标签: web-services security

实施Web服务时必须评估哪些设计模式?

更重要的是,Web服务必须考虑哪些安全方面?由于WSDL包含服务的完整信息,包括输入,输出格式和访问URL,因此安全性不会受到Web服务的影响吗?

提前致谢,

修改

只想添加一些东西。

我正在开发Java中的服务,该服务将部署在Linux(Fedora)机器上托管的JBoss服务器上。

就考虑服务的认证机制而言,是的,我确实已经有了。除非用户获得令牌,否则他将无法使用实际执行业务操作的其他服务。

此外,使用CDATA将实际请求隐藏在2层XML中,用于SOAP Envelope主体内的实际请求主体。类似下面的代码。

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:myns="http://testserver/testservice">
   <soapenv:Header/>
   <soapenv:Body>
      <myns:Operation>
         <myns:OperationRequestBody><![CDATA[-- actual request XML goes here --]]></myns:OperationRequestBody>
      </myns:Operation>
   </soapenv:Body>
</soapenv:Envelope>

是否存在URL的安全方面 - 例如使用HTTPS协议,我知道这将是服务器级别的配置。

1 个答案:

答案 0 :(得分:0)

这取决于事物的数量:

  • 是否在组织内部公开您的Web服务(您不必担心安全性),而不是在外部公开Web服务。

我们做的一件事(当我们在内部公开时),我们使用Windows / NTLM身份验证,以便我们域中的特定人员可以运行它。

我会确保我不会暴露任何可以粉碎Web服务的东西:)(比如GetAllData或类似的smth),这样你只暴露无状态的方法,如果需要的话很容易控制。

另外,使用了confluence的API(基于webservice),并且他们使用了身份验证机制,您首先登录,并且您获得了令牌,并且您必须在您执行的每个Web服务调用上附加该令牌。