2

如果我们谈论安全配置,像 thrift 或 gSoap 这样的 rpc 框架和内置的 MS RPC 有什么区别。MSDN 在http://msdn.microsoft.com/en-us/library/windows/desktop/aa379441(v=vs.85).aspx上描述了一些方面,所以我可以假设微软对 rpc 的支持。这是否意味着如果我想使用与 MS 不同的框架,我需要自己处理安全问题?

4

1 回答 1

1

这是一个非常广泛的问题。我不太确定您的真正期望,但我会尽力回答您的问题。

首先,当然,您必须注意编写的任何内容的安全性,无论是服务器代码还是客户端代码。RPC 服务的安全性是一个广泛的领域,任何由框架提供给您的复杂安全功能仍然只是一种工具,并且仍然只是您的服务的整体安全概念的一部分。换句话说:使用 SSL 不会保护您的服务器免受 SQL 注入。

其次,Thift、SOAP 和 MS-RPC 各有不同的设计目标。Thrift 在设计时考虑了性能和便携性。Thrift 更专注于基本的 RPC,以最简单的工作方式为任何应用程序提供效率和可移植性,用于任何目的。当然,这种方法意味着没有太多更高级别的功能,因为这被认为超出了 Thrift 的范围并留给用户。但是,对于某些语言,TLS (SSL) 传输是可用的。

相比之下,SOAP 是一个更丰富的协议,它基于 XML 作为一种机器可读、标准化和可扩展的格式,可以扩展以支持更高级别的功能,如 WS-Security、WS-ReliableMessaging 等。不利的一面是,我看到许多框架和开发工具——尽管 SOAP 多年前已经标准化——仍然不能以最简单的方式正确处理 SOAP,更不用说支持 WS-Security。然而,尽管如此,尽管 SOAP 消息往往会产生大量流量并导致性能不佳,但 SOAP 仍然在业界广泛使用。

MS-RPC 作为 DCOM 的基础之一,与 Windows 环境和 Windows 开发工具密切相关。如果您可以忍受这种限制并希望使用 DCOM,那么 DCOM 提供了一个非常高级的抽象,并在当今的 IDE 中提供了良好且经过验证的支持。

于 2013-08-25T13:07:25.353 回答