ISAServer2006安装时自带了两个登录表单模板,分别用于ExchangeOWA登录和其他情况下的表单登录,HTML源文件位于%ISA_Install_Folder%\CookieAuthTemplates中对应的目录,如下图所示。在各自目录中又有不同的子文件夹,其中HTML目录中的就是通常使用的标准表单登录界面,而xHTML和cHTML是简化的登录界面,用于其他方式的连接,如WAP等等。
通常情况下我们使用的登录表单源文件为usr_pwd.htm,如下图所示,注意看以“@@”开始的字符串,这些字符串代表不同的引用字段,当用户通过ISAServer访问时,将会被ISAServer根据Strings.txt文件中的信息进行替换。
因此,当使用不同语言的用户登录时,ISAServer只需要根据不同语言的Strings.txt替换对应的字段即可。英文版的Strings.txt保存在和HTML源文件相同的目录中,而其他语言的Strings.txt保存在nls目录的对应子目录中,如下图所示,中文版的Strings.txt存放目录及内容。
在修改登录表单时,需要注意一下几点:
- 尽量不要修改HTML源文件的结构,除非你明确知道该如何修改;
- 尽量不要修改HTML源文件中涉及引用字段的HTML元素;
- 在修改Strings.txt时,注意修改后文字的长度;
- 强烈建议在修改之前进行备份;建议通过复制来新建一个登录表单目录并进行修改,而不修改原有目录;新的登录表单目录必须位于%ISA_Install_Folder%\CookieAuthTemplates目录中;
- MicrosoftFirewall所运行的服务账户需要对表单登录目录具有读取权限,否则服务无法启动,错误为5拒绝访问。
- 登录表单页面由MicrosoftFirewall服务在启动时加载,因此修改完成后,需要重启MicrosoftFirewall才能生效;
我建议大家尽量只修改图片和Strings.txt。我通过复制ISA目录得到一个新的ISACN目录,如下图所示,
我对ISACN目录下的usr_pwd.htm和中文Strings.txt进行修改,然后配置Web侦听器使用此表单,如下图所示。如果是ISAServer企业版,需要将这个目录复制到其他阵列服务器的相同位置;
点击应用保存修改并更新防火墙策略,重启MicrosoftFirewall服务。
然后在客户端进行访问,修改后的效果就出来了,如下图所示,不过我修改的确实有点丑,看来我在图像处理上没有前途......:(