【发布时间】:2012-03-23 15:24:27
【问题描述】:
谁能解释一下Restful web services和WSDL(Web Service and Description Language)之间的区别。哪个更安全?如何安全?
谢谢
【问题讨论】:
标签: java web-services wsdl restful-authentication
谁能解释一下Restful web services和WSDL(Web Service and Description Language)之间的区别。哪个更安全?如何安全?
谢谢
【问题讨论】:
标签: java web-services wsdl restful-authentication
WSDL“Web 服务描述符语言”是定义基于 SOAP 的 Web 服务的内容和行为的标准。行为。它是定义“Web 服务”的 WS* 标准集合的一部分。这些标准涵盖发现、传输、消息格式、身份验证、不可否认性等。这些是由 W3C 管理的正式标准。
REST 是一种网络编程风格,其中每个请求都以有效 URL 的形式发出,以识别对象的“键”,并结合 http GET、PUT、POST 或 DELETE 操作来识别您想要的内容去做吧。
REST 是一种样式而非标准,消息可以是 XML、JSON 或您选择的任何格式。
我认为 REST 非常适合简单地做简单的事情。 SOAP 等非常适合具有复杂的安全性和工作流要求的复杂“企业”级交互,但是对于更简单的服务来说,它的杀伤力太大了。
至于安全 REST 对您没有帮助。但是使用标准的 Web 安全(会话、cookie、SSL 等),您可以很好地保护 RESTful 服务。
SOAP 内置了防弹安全性,但其配置繁重,需要 LDAP 服务器和管理公钥/私钥对。除非你真的需要它,否则最好不要管它。
【讨论】:
WSDL 用于描述 SOAP 服务。您确实是在要求比较 SOAP 和 REST。
SOAP 和 RESTful 服务之间没有内在的安全差异。很可能任何安全问题都与您的具体实施有关。
SOAP 更像 RPC - 它专注于在远程服务器上调用命令。 REST 是面向资源的 - 您通过添加、检索、更新和删除远程服务器上的资源来与服务器交互,这对应于操作。
例如。使用 SOAP 服务,您可能会调用 updateAccount(account_id, details) 方法来保存更改,但使用 REST 服务,您可能会将 PUT 信息发送到 /account/<account_id>。
在 Java 中,JAX-RS 是开始使用 RESTful 服务的好地方。
【讨论】: