管理 Exchange 存储资源

 

上一次修改主题: 2005-06-21

Active Directory 不是 Exchange 系统管理器的唯一通信参与方。各个 Exchange 系统管理器管理单元都可与 Exchange 存储通信。这样,您便可以实时显示有关 Exchange 存储资源的信息,并管理公用文件夹。Exchange 系统管理器使用 MAPI 来显示邮箱统计信息和客户端登录。它使用分布式创作和版本管理 (DAV) 协议来显示和管理公用文件夹资源。

下图说明了 Active Directory 中的邮箱存储及公用文件夹存储对象,与 Exchange 系统管理器中的邮箱存储及公用文件夹存储对象之间的区别。在 Active Directory 站点和服务中,邮箱存储和公用文件夹存储对象是由不包含子对象的叶节点来表示的。但是,在 Exchange 系统管理器中,邮箱存储和公用文件夹存储对象是由控制台树中的节点来表示的。它们包含几个子容器,如“登录”、“邮箱”或“公用文件夹”、“公用文件夹实例”、“复制状态”和“全文索引”。

dee0c049-6a20-4c26-a99c-6560ef1927fe

邮箱存储和公用文件夹存储对象下面的子容器是不存在于 Active Directory 或其他任何位置的虚拟容器。要显示这些容器,Exchange 系统管理器必须通过 IExchangeManageStore 接口与 Exchange 存储通信。IExchangeManageStore 接口是基于 MAPI 的内部接口。此 MAPI 通信在本质上是动态的。当在 Exchange 系统管理器中展开特定的邮箱存储或公用文件夹存储时,便会发生此通信。如果邮箱存储或公用文件夹已卸除,便无法显示邮箱存储或公用文件夹存储的子容器。当向 Exchange 服务器中添加邮箱存储或公用文件夹存储时,当显示个别邮箱存储或公用文件夹存储的属性时,以及当装入或卸除邮箱存储或公用文件夹存储时,也会发生通过 MAPI 的通信。

note注意:
要实现基于 MAPI 的通信,必须使用本地 Administrators 组中的 Exchange 系统管理器帐户。这样,您便拥有了对本地计算机上的 \System32 目录的写入权限。这是必需的,因为只有这样,Exchange 系统管理器才能够创建动态的 MAPI 配置文件。没有 MAPI 配置文件,便无法通过 MAPI 与 Exchange 服务器通信。

Exchange 系统管理器调用下列 IExchangeManageStore 方法来获取有关邮箱和公用文件夹存储的动态信息:

  • GetMailboxTable GetMailboxTable 方法获取邮箱存储中的所有邮箱的有关信息。此方法返回指向 MAPI IMAPITable 接口的指针,该接口包含指定的 Exchange 存储中的所有邮箱的有关信息。该 MAPI 表中的每一行都表示一个邮箱。该表中的列提供有关邮箱的详细信息,如名称、邮件数、邮件大小、登录到邮箱的上一个用户的 Windows 用户帐户名,以及用户上一次登录的日期和时间。此外,表中的列还指出邮箱当前是否在存储限制内。
  • GetPublicFolderTable GetPublicFolderTable 方法获取公用文件夹存储中的所有公用文件夹的有关信息。此方法返回指向 MAPI IMAPITable 接口的指针,该接口包含指定的 Exchange 存储中的所有公用文件夹的有关信息。该 MAPI 表中的每一行都表示一个公用文件夹。表中的列提供有关公用文件夹的详细信息,如名称、关联邮件的数目、所有关联邮件的大小(字节)、带附件的关联邮件数、公用文件夹上缓存的列和分类的数目、公用文件夹联系人数、访问公用文件夹副本的日期和时间,以及上一次修改公用文件夹中的对象的日期和时间。
tip提示:
可以显示所获得的全部邮箱存储或公用文件夹存储信息。有关详细说明,请参阅如何显示为邮箱存储或公用文件夹存储获得的所有信息

由于 Exchange 系统管理器使用 MAPI 从 Exchange 存储中获取动态信息,因此,不要在 Exchange 服务器或运行 Exchange 系统管理器的工作站上安装基于 MAPI 的客户端,如 Microsoft Outlook。Exchange 系统管理器使用 Mapi32.dll 来与 Exchange 存储通信。Mapi32.dll 代表 MAPI 子系统的核心组件,它位于 Winnt\System32 文件夹中。如果在包含 Exchange 系统管理器的计算机上安装 Microsoft Office Outlook 2000 或更高版本,MAPI 子系统便会移至 Program Files\Common Files\System\Mapi\1033\NT 文件夹中。通常,Outlook 在 Winnt\System32 文件夹中安装存根版的 MAPI,该 MAPI 将 MAPI 调用路由到 Outlook 实现中。如果用 Outlook 实现替代 Exchange Server 2003 版的 Mapi32.dll,系统可能会在 MAPI 子系统中遇到版本冲突,从而导致 Exchange 系统管理器失败。

note注意:
如果必须在同一台计算机上安装 Outlook 和 Exchange Server 2003(例如,诸如基于 MAPI 的备份程序这样的非 Microsoft 解决方案需要有 Outlook 组件),那么请首先阅读 Microsoft 知识库文章 266418“Microsoft does not support installing Exchange Server components and Outlook on the same computer”(英文)。

为了创建、管理和删除公用文件夹资源,Exchange 系统管理器(具体地说是“公用文件夹”管理单元)使用 DAV 来与 Exchange 存储通信。DAV 是基于 HTTP 的协议。因此,对 Exchange 存储的访问是通过 World Wide Web Publishing 服务 (w3svc) 来实现的。DAV 命令(如 PROPFIND、SEARCH、DELETE、MOVE、COPY 和 OPTIONS)是使用 XML 编码的。

note注意:
Exchange 系统管理器使用 DAV 来管理公用文件夹,因为 DAV 是 Exchange Server 2003 中唯一使用基于 MAPI 的常规用途公用文件夹层次结构的远程协议。

默认情况下,Exchange Server 2003 在 Exchange 服务器上创建下列 HTTP 虚拟目录:

  • Exchweb 存储 Microsoft Office Outlook Web Access for Exchange Server 2003 必需的图形文件和其他文件。这是指向服务器硬盘上的 \Program Files\Exchsrvr\Exchweb 目录的标准虚拟目录。
  • Exchange 供 Outlook Web Access 用来访问邮箱。此虚拟目录绑定到 URL \\.\BackOfficeStorage\<服务器的完全限定域名>\mbx。
  • Public 供 Outlook Web Access 用来访问公用文件夹。此虚拟目录绑定到 URL \\.\BackOfficeStorage\<服务器的完全限定域名>\public 文件夹。
  • Exadmin 供 Exchange 系统管理器用来管理公用文件夹。该虚拟目录绑定到 URL \\.\BackOfficeStorage。

对于 Exchange 系统管理器而言,最重要的 HTTP 虚拟目录是 Exadmin 虚拟目录。通过 Exadmin 可以访问 Exchange 服务器上的所有公用文件夹层次结构(也称命名的公用文件夹树)。这种访问之所以能够实现是因为 Exadmin 直接指向 BackOfficeStorage 命名空间。为了使用户能够访问 Exchange 服务器上的所有邮箱和公用文件夹存储,Exchange OLE DB (ExOLEDB) 提供程序在 OLE DB RootBinder 中注册 BackOfficeStorage 命名空间。当在 Exchange 系统管理器中展开公用文件夹层次结构或者创建、管理或删除公用文件夹时,通信便通过 Exadmin 虚拟目录发生了。

Exchange 系统管理器还使用其他 HTTP 虚拟目录。例如,Exchange 系统管理器使用 Public 虚拟目录来显示基于 MAPI 的公用文件夹的内容。Public 虚拟目录存在于所有 Exchange 服务器上。但是,如果创建其他常规用途的公用文件夹树或者将它与其他公用存储关联,那么,在您创建虚拟目录以使用户能够通过 HTTP 访问该层次结构之前,Exchange 系统管理器无法显示公用文件夹的内容。有关如何创建和配置公用文件夹层次结构和存储的详细信息,请参阅 Exchange Server 2003 Administration Guide

下图显示了呈现在 Exchange 系统管理器中的公用文件夹内容。

eb381eb7-e9ce-4bce-a6e7-3ec6aeec8a8a

Exchange 系统管理器中的“公用文件夹”管理单元与 Exchange 存储之间的大部分交互都是通过 Exadmin 虚拟目录来完成的。Exadmin 依赖 ExOLEDB 提供程序,后者是一个非远程的组件。Exchange 系统管理器必须访问相应 Exchange 服务器(即驻留与公用文件夹层次结构关联的公用存储的 Exchange 服务器)上的 Exadmin 虚拟目录。该服务器是通过从与公用文件夹层次结构对应的目录对象中获取的信息来确定的。下图显示了 Exchange 系统管理器如何通过 Exadmin 虚拟目录与 Exchange 存储通信。

3603d9f2-9898-4656-a064-87175fc0b0e1

Exchange 系统管理器在连接到 Exadmin 虚拟目录时执行下列步骤:

  1. 从层次结构对象中获取 Exchange 存储列表 Exchange 系统管理器读取 Active Directory 中的公用文件夹层次结构对象的 msExchOwningPFTreeBL 属性。该属性决定了驻留与公用文件夹层次结构关联的公用存储的 Exchange 服务器列表。
    tip提示:
    当在 Exchange 系统管理器中显示公用文件夹层次结构的属性时,可以看到在 msExchOwningPFTreeBL 属性中列出的 Exchange 存储。这些存储在“常规”选项卡上的“与文件夹树关联的公用存储”下面列出。
  2. 选择目标服务器并检索 Exadmin 绑定信息 Exchange 系统管理器选择包含公用文件夹层次结构副本的服务器,然后读取该服务器的 Exadmin 虚拟目录的配置信息。Exadmin 虚拟目录在 Active Directory 中通过名为“Exadmin”的目录对象来表示,该目录对象驻留在服务器的默认 HTTP 虚拟服务器(名为“Exchange 虚拟服务器”)下。Exchange 系统管理器要连接到驻留公用文件夹层次结构的 Exchange 服务器上的 Exadmin 虚拟目录,必须通过一个 TCP 端口,该端口的编号即包含在该目录对象的 msExchServerBindings 属性中。如果未设置该属性,Exchange 系统管理器将使用默认 TCP 端口 80。
    note注意:
    如果在驻留与公用文件夹层次结构关联的公用存储的 Exchange 服务器本地运行 Exchange 系统管理器,Exchange 系统管理器将首先尝试连接到本地服务器。
  3. 使用绑定信息连接到 Exadmin 虚拟目录 Exchange 系统管理器使用从 msExchServerBindings 属性中获取的 TCP 端口号来连接到选定 Exchange 服务器上的 Exadmin 虚拟目录。然后它请求层次结构中的所有顶级公用文件夹列表。在 HTTP 请求的 HTTP User-Agent 头中,Exchange 系统管理器将其自身标识为 Exchange Admin 客户端。Internet 信息服务 (IIS) 对客户端进行身份验证,并将顶级公用文件夹列表返回给 Exchange 系统管理器。
  4. 显示顶级公用文件夹 Exchange 系统管理器将顶级公用文件夹作为容器对象显示在控制台树中的公用文件夹层次结构下。该步骤未在上图中演示。
    note注意:
    默认情况下,只显示人际消息 (IPM) 子树中的顶级文件夹,但是如果用鼠标右键单击层次结构对象,然后选择“查看系统文件夹”,则还可以显示非 IPM 子树中的文件夹。

可以将公用文件夹层次结构与多个 Exchange 服务器中的公用文件夹存储关联。这时,该层次结构将自动在这些公用存储之间复制。这种复制确保了所有公用文件夹存储都知道层次结构中的所有公用文件夹。因此,可以连接到其中的任何一台 Exchange 服务器来管理公用文件夹资源。事实上,从一台服务器切换到另一台服务器可以验证所有公用存储是否都具有一致的层次结构视图。例如,您可能要在诊断与层次结构复制有关的问题时执行此操作。有关如何连接到特定 Exchange 服务器的详细说明,请参阅如何在 Exchange 系统管理器中连接到特定的 Exchange Server

note注意:
Exchange 系统管理器总是直接连接到与选定的公用文件夹层次结构关联的公用存储所在的 Exchange 服务器。不能通过前端服务器连接到公用存储。

无论您是自己选择要连接到的公用文件夹存储,还是让 Exchange 系统管理器来为您选择,连接机制都与此部分前面讨论的机制相同。但是,Exadmin 虚拟目录必须位于 Exchange 服务器上的默认 IIS 网站中。在 IIS 管理器中,确保“IP 地址”设置为“(所有未分配)”,“TCP 端口”设置为“80”,并且未指定“主机头值”。这是因为 Exchange 系统管理器默认情况下尝试连接到 TCP 端口 80,并在 HTTP 请求的主机头值中指定 Exchange 服务器的名称。如果在 IIS 管理器中为默认网站指定服务器名以外的主机头值,Exchange 系统管理器将无法访问 Exadmin 目录。因此,您会收到一条错误消息,指出操作由于无效的 HTTP 请求格式而失败。此时,尽管您能够在 Outlook Web Access 中访问公用文件夹,但无法管理公用文件夹资源。有关访问 Exadmin 虚拟目录时遇到的问题的详细信息,请参阅知识基本文章 325920“Error Message When You View Public Folders in Exchange System Manager”(英文)。

note注意:
不能更改 Exchange 系统管理器在连接到 Exadmin 虚拟目录时使用的主机头值。Exchange 系统管理器总是使用目标 Exchange 服务器的 NetBIOS 名称。因此,网站必须在“主机头值”参数中指定服务器的 NetBIOS 名称,或者不指定值。

但是,可以使用 IIS 管理器为驻留 Exadmin 虚拟目录的默认网站分配专用的 IP 地址和自定义的 TCP 端口。当显示网站的属性时,应在“网站”选项卡上指定“IP 地址”或自定义的“TCP 端口”。Exchange 系统管理器首先尝试连接到 TCP 端口 80。如果此连接尝试失败,Exchange 系统管理器将通过远程过程调用 (RPC) 与 Exchange 服务器上的 IIS Admin 服务通信,以确定必需的端口号。IIS Admin 服务将自定义端口号返回给 Exchange 系统管理器,因为它已在 IIS 元数据库中注册。然后,Exchange 系统管理器在 Exadmin 目录对象的 msExchServerBindings 属性中注册自定义端口。之后,Exchange 系统管理器将按照此部分前面介绍的过程连接到 Exadmin 虚拟目录。

如果在 Exchange 服务器与运行 Exchange 系统管理器的计算机之间不支持 RPC,那么与 IIS Admin 服务的通信将失败。例如,如果有防火墙阻止通过 TCP 端口 135 来访问 RPC 终结点映射器,那么将无法进行此通信。在这种情况下,Exchange 系统管理器将无法动态确定自定义端口。最好的办法是使用 Exadmin 虚拟目录的默认端口号 80。

note注意:
无法通过不支持 RPC 的网络连接来使用 Exchange 系统管理器。

Exchange Server 2003 版的 Exchange 系统管理器完全支持安全套接字层 (SSL)。因此,可以在 Exchange 服务器上安装 SSL 证书,并强制在 HTTP 上实现 SSL 加密,以保护 Exchange Server 2003 虚拟目录,如 Public 和 Exadmin。如果 Exchange 服务器与运行 Exchange 系统管理器的计算机必须通过公共网段或不可信的网段来进行通信,那么强制实现一个安全的通信通道是一个不错的主意。

下图显示了通过 HTTP over SSL (HTTPS) 连接到 Exadmin 虚拟目录的过程。

660bd90c-79f0-41bb-adb5-da8ef3e8fc48

当首次通过 HTTPS 连接到 Exadmin 虚拟目录时,Exchange 系统管理器将执行下列步骤:

  1. Exchange 系统管理器尝试通过 HTTP 进行连接,该过程已在此部分前面介绍。
  2. 由于必须通过 HTTPS 来连接到 Exadmin 目录,因此 Web 服务器使用 HTTP 状态代码 403 (Forbidden) 来响应 HTTP 请求。
  3. Exchange 系统管理器通过 RPC 向 IIS Admin 服务查询与 SSL 有关的信息,例如,连接到驻留 Exadmin 虚拟目录的网站所必须使用的 SSL 端口。IIS Admin 服务将此信息返回给 Exchange 系统管理器。
  4. Exchange 系统管理器通过 HTTPS 连接到 Exadmin 虚拟目录,并显示层次结构中的公用文件夹列表。
    note注意:
    针对驻留 Exadmin 虚拟目录的网站注册的安全证书必须将本地 Exchange 服务器的完全限定域名 (FQDN) 作为网站的公用名列出。此外,运行 Exchange 系统管理器的计算机还必须信任颁发 SSL 证书的证书颁发机构。否则,Exchange 系统管理器将显示一条指出 SSL 证书不正确的错误消息,并且不会显示公用文件夹层次结构。
  5. Exchange 系统管理器将 SSL 端口号写入到与 Exadmin 虚拟目录对应的目录对象的 msExchSecureBindings 属性中。这样,在建立后续连接时,便不必通过运行该算法来从服务器中获取 SSL 端口号。
 
显示: