RPC 代理服务器上的 RPC over HTTP 交互

 

上一次修改主题: 2006-04-27

对于 Outlook 建立的与运行 Microsoft Exchange Server 的服务器的每个连接,Microsoft® Office Outlook® 都会在客户端与 RPC 代理服务器之间建立一个安全套接字层 (SSL) 上的 HTTP 会话。Outlook 通过此 HTTP 会话向 Exchange 服务器发送 MAPI RPC 请求。RPC 代理服务器上的 RPC over HTTP 代理网络组件从 HTTP 会话中提取 RPC 请求,并将这些请求转发到 RPC 请求中指定的服务器。建议使用 Exchange 前端服务器作为 RPC 代理服务器。

RpcProxy.dll 是控制从 HTTP 会话中提取 RPC 请求的 DLL。RpcProxy.dll 是运行在 Internet 信息服务 (IIS) 中的 Internet 服务器 API (ISAPI)。RpcProxy.dll 侦听 RPC 虚拟目录上的活动。

IIS 根据 Outlook 配置文件设置,使用基本验证或 NTLM 身份验证对 HTTP 请求进行身份验证。IIS 对请求进行身份验证后,会将请求发送到 RpcProxy.dll。RpcProxy.dll 只接受经过身份验证的请求。即使 IIS 被配置为允许匿名用户,RpcProxy.dll 也不会将匿名请求转发到 Exchange 服务器。此外,RpcProxy.dll 只接受 SSL 上的 HTTP 请求。如果 HTTP 会话不使用 SSL,RpcProxy.dll 将阻止请求。

note注意:
如果您减轻 SSL 负担,则必须配置额外的注册表项以告知 RPC over HTTP 代理网络组件接受非 SSL 连接。SSL 减负的一个示例是当 RPC 代理服务器前面的防火墙停止 SSL 会话时。有关如何配置 RPC 代理服务器以使用 SSL 减负功能的信息,请参阅如何配置 RPC 代理服务器以允许在单独服务器上使用 SSL 减负功能

RpcProxy.dll 将 RPC 请求转发到 Exchange 服务器上的特定服务。每个服务都由 RPC 请求中的端口号指定。下列服务是被允许的服务:

  • Microsoft Exchange Information Store 服务(端口 6001)
  • Exchange system attendant 服务中的 DSProxy 引用服务(端口 6002)
  • Exchange system attendant 服务中的 DSProxy 服务(端口 6004)

有效端口包含在 RPC 代理服务器上的以下注册表项中:

HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc\RpcProxy

在 Exchange Server 2003 Service Pack 1 (SP1) 中,系统助理可自动维护“ValidPorts”注册表项。当您向组织中添加新的 RPC over HTTP 后端服务器时,系统助理会更新“ValidPorts”注册表项。

note注意:
有关编辑注册表以设置 ValidPorts 注册表值的信息,请参阅如何配置 RPC 代理服务器以便将指定的端口用于 RPC over HTTP

您可以在后端服务器上安装 RPC over HTTP 代理网络组件。只有当您的组织中没有 Exchange 前端服务器时,才应在后端服务器上安装 RPC over HTTP 代理网络组件。如果在后端服务器上安装 RPC over HTTP 代理网络组件,则必须手动配置 RPC over HTTP 代理组件设置和 IIS 设置。