自定义 Outlook Web Access 登录页

 

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

在 Microsoft® Exchange Server 2003 中,针对 Exchange Server 2003 的 Microsoft Office Outlook® Web Access 引入了新的身份验证机制。基于表单的身份验证为用户通过身份验证提供了一个中心 Web 登录屏幕。 使用基于表单的身份验证时,登录凭据存储在临时 cookie 中。 在 cookie 中存储这些凭据为确保会话注销和自动超时提供了更安全的机制。

本主题提供的信息旨在帮助 Exchange 管理员自定义满足其组织需要的登录页。

本主题介绍开发人员可在其他对象中对 \Exchweb 文件夹中存在的 Outlook Web Access 源 .asp, .css, .htc, .js 和 .xsl 文件进行的更改。 请注意,在安装服务包时,对这些对象进行的任何更改都将被撤消,或者将无法正常工作。 而且,Microsoft Developer Support 无法支持对这些 Outlook Web Access 对象的自定义。

启动自定义登录页之前,应在测试服务器上启用基于表单的身份验证 (FBA)。

启用基于表单的身份验证
  1. 打开 Exchange 系统管理器。

  2. 导航到 HTTP 协议。

  3. 右键单击 Exchange 虚拟服务器,然后单击“属性”。

    note注意:
    可以在服务器上所拥有的任何 Exchange 虚拟服务器上设置基于表单的身份验证;这些示例使用默认设置。
    打开 HTTP 虚拟服务器属性
  4. 在“设置”选项卡上,选择“启用基于表单的身份验证”。

    在 HTTP 虚拟服务器属性上启用基于表单的身份验证
  5. 重新启动 Microsoft Internet 信息服务 (IIS)。

note注意:
基于表单的身份验证要求在运行 IIS 的服务器上配置安全套接字层 (SSL)。 出于调试目的,Outlook Web Access 提供了一种通过正常的 HTTP 启用 FBA 的方法。
Caution警告:
不要在生产环境中部署该过程,否则将以非加密状态发送用户登录信息。
Caution警告:
错误地编辑注册表可能导致严重问题,甚至可能需要重新安装操作系统。因注册表编辑不当而导致的问题可能没有办法解决。在编辑注册表之前,请备份所有重要数据。
为开发环境配置不带 SSL 的基于表单的身份验证
  1. 打开注册表编辑器。

  2. 转到下面的注册表项:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSExchangeWeb

  3. 如果还不存在,请将 OWA 子项添加到该项。

  4. OWA 子项下,添加一个名为 AllowRetailHTTPAuthDWord 值。

  5. 将该 DWord 的值设置为 1

下图显示了标准的高级客户端登录页。

OWA 高级登录页

高级客户端定义为 Microsoft Internet Explorer 5.01 及更高版本。

下图显示了基本客户端登录页。

OWA 基本登录页

基本客户端定义为 Internet Explorer 版本 5 和更早版本以及其他非 Microsoft 浏览器。

组织需要更改的最常见事情是登录页上的字符串和图形。

登录页的设计使字符串的更改并不困难。 页面中的所有字符串均定义为 logon.asp 文件顶部的常量。

若要帮助确定要更改的字符串,请使用下表。

 

ID 常量 注释

1

L_LoginButton_Text

登录按钮标题

2

L_WindowTitle_Text

登录页标题

3

L_ImgAlt_Text

用于主要 Outlook Web Access 登录页登录图像的可选文本

4

L_ShowUITitle_Text

客户端选项组文本标签

5

L_ShowDetail_Text

“这是什么”帮助文本展开链接

6

L_HideDetail_Text

“隐藏说明”帮助文本折叠链接

7

L_ShowSimpleUI_Text

基本客户端体验标签

8

L_ShowComplexUI_Text

高级客户端体验标签

9

L_UIDescription_Text

高级客户端的“这是什么”展开说明

10

L_UIBasicDescription_Text

基本客户端的“这是什么”展开说明

11

L_ShowTrustTitle_Text

安全选项组标签

12

L_ShowPublicUI_Text

公用计算机标签

13

L_ShowTrustedUI_Text

私有计算机标签

14

L_PublicDescription_Text

公用计算机安全选项的“这是什么”展开说明

15

L_BasicTrustDescription_Text

基本客户端的私有计算机安全选项说明

16

L_PremiumTrustDescription_Text

私有计算机安全选项的“这是什么”展开说明

17

L_TrustWarning_Text

针对选择私有计算机安全选项的用户的警告策略消息

18

L_Password_Text

密码输入字段标签

19

L_UserName_Text

用户名输入字段标签

20

L_DialogRelogon_Text

用户超时的警告消息

21

L_DialogCloseButton_Text

 

22

L_ExpireWarning_Text

登录页底部与 Outlook Web Access 和超时期间有关的安全信息

23

L_401User_Text

未授权的 http 响应

24

L_LogoffUser_Text

用于通知用户已被注销的字符串

25

L_RelogonUser_Text

会话过期消息

26

L_ErrNoActiveScritp1_Text

无脚本支持警告

27

L_ErrorClearCerts_Text

S/MIME 错误消息

28

sGuid

 

29

sCmpGuid

 

30

Scheme_HTTPS

 

31

Scheme_HTTP

 

下图显示了表中列出的大多数主要字符串。

显示在 OWA 登录页上的所有文本字符串

登录页是 Outlook Web Access 用户在身份验证过程中涉及的几个页面之一。 要求用户进行身份验证时,通常会将用户重定向到 http://servername/exchange 目录。 该目录包含默认的 owalogon.asp 文件。

owalogon.asp 文件评估浏览器的 HTTP_ACCEPT_LANGUAGE 头并确定要显示的 Outlook Web Access 登录表单的本地化版本。 在 owalogon.asp 确定要使用的版本后,用户将被重定向到 logon.asp 页面。 这就是本主题将介绍的页面。

owalogon.asp 重定向页面还可用于将对 logon.asp 页面进行的更改与应用 Exchange Server 2003 服务包时可能发生的更改相隔离。 因为应用 Exchange 服务包和其他更新后,通常会覆盖可能已对 logon.asp 文件进行的任何更改,所以隔离这些更改是非常重要的。 通过使用不同的文件名(如 logon2.asp)保存 logon.asp 自定义和更改 owalogon.asp 页面以指向新页面,可以减少服务包更新期间需要进行的更改。 当然,应该将更新期间应用的任何新 logon.asp 页面与自定义页面相比较,以确保将更新期间的任何更改都应用到自定义页面。

若要指向自定义登录页,请从 owalogon.asp 页面底部的以下部分更新出现的两个 logon.asp。

for each szSubString in arLanguages
   szLanguage = Split(szSubString, ";", -1, 1)
   szMSFTLang = LangMap.Item(UCase(szLanguage(0)))
   for each folder in folders
      if (szMSFTLang = UCase(folder.Name)) then
         Server.Transfer("./" & folder.Name & "/logon.asp")
      end if
   next
next
Server.Transfer("./" & "USA" & "/logon.asp")

Outlook Web Access 拥有 Outlook Web Access 支持的各种语言的 logon.asp 页面的本地化版本。 如果组织支持 Outlook Web Access 中的多个语言,则在更改 logon.asp 时,请记住要对组织支持的每种语言都进行更改。

登录页需要用户以 domain\username 或用户主要名称 (UPN) 的形式输入用户名。

除用户名外,还必须提供密码才能成功登录。

用户登录时,传输的其他可视参数包括客户端体验和安全选项。

登录页在向 owaauth.dll 的投递中提交值。下表显示了所支持的值。

 

参数 注释

username

字符串

用户登录名。 可以是 UPN 或 domain\user。

password

字符串

用户密码。

destination

字符串

登录页的目标 URL。

flags

Bitmask

包含有关客户端体验、安全设置和 gzip 压缩支持的登录信息的二进制掩码

在这些参数中,需要对 flags 参数进行进一步解释。

flags 参数允许启用和禁用某些 Outlook Web Access 功能。 在 Exchange Server 2003 中,该参数控制以下功能。

安全级别

登录页提供两种不同的安全设置。 这些设置指定用户登录的是公用计算机还是私有计算机。 选择私有计算机时,用户会话将更改,并且会话超时值会增加到 TrustedClientTimeout 注册表子项中指定的值。

  • 若要启用该功能,请执行标记值的位或,二进制值为 0100(十进制值为 4)。
  • 若要禁用该功能,请执行标记值的位与,二进制值为 1011(十进制值为 11)。 默认情况下禁用此功能。

压缩级别

Outlook Web Access 支持 Internet 标准的 gzip 压缩。 不幸的是,不是所有支持 gzip 压缩的浏览器都以相同的方式运行。 因此,登录页提供相关逻辑来专门确定所用的 Microsoft Internet Explorer 版本和软件更新级别。 如果 Outlook Web Access 确定所用版本不提供足够的 gzip 支持,则可通过使用基于表单的身份验证和设置压缩级别标记禁用该功能。

  • 若要禁用该功能,请执行标记值的位或,二进制值为 0010(十进制值为 2)。
  • 若要启用该功能,请执行标记值的位与,二进制值为 1101(十进制值为 13)。 默认情况下启用此功能。

客户端体验

默认情况下,Outlook Web Access 为支持它的浏览器提供丰富的客户端体验,为其他浏览器提供基本的客户端体验。 尽管浏览器支持丰富的体验,但一些用户可能还是需要使用基本的体验。 可能需要采取这种选择的情景是,用户在特定的计算机上未使用 Outlook Web Access,但需快速访问收件箱,此时可使其获得性能增强。

  • 若要强制客户端体验为基本体验,请执行标记值的位或,二进制值为 0001(十进制值为 1)。
  • 若要强制客户端使用高级客户端,请执行标记值的位与,二进制值为 1110(十进制值为 14)。

以下资源提供了帮助自定义 Outlook Web Access 登录页的详细信息。

 
显示: