在 ISA Server 2006 中配置基于 LDAP 的身份验证

在用户访问通过 ISA Server 2006 发布的 Web 服务时, ISA Server 2006 支持使用 LDAP 协议进行用户身份验证。LDAP(轻量级目录访问协议)是一种标准的目录服务访问协议。活动目录基于 LDAP 协议的最新版本 LDAP v3,每一个域控制器都是一个 LDAP 服务器,都可以通过 LDAP 协议进行访问。你可以让 ISA Server 2006 通过 LDAP 协议访问域控制器来实现用户的身份验证,而不需要将 ISA Server 加入到活动目录;ISA Server 2006 只支持使用基于 Windows Server 2003 或 Windows Server 2000 操作系统的域控制器提供的 LDAP 服务。

在采用 LDAP 进行身份验证时,客户端在输入身份验证凭据时,必须采用活动目录可以识别的格式,包括以下三种:

  • SAM 用户账户(domain\username);

  • 用户主体名(username@domain.com)

  • 区别名字(cn=administrator,dc=winsvr,dc=org)

 

在 ISA Server 2006 中配置基于 LDAP 的身份验证包含以下三个步骤:

  • 配置 LDAP 服务器;

  • 配置 LDAP 用户集;

  • 配置 LDAP 身份验证;

在这篇文章中,我将先配置 LDAP 服务器,然后在创建 Web 发布规则的时候配置 LDAP 身份验证和 LDAP 用户集。

运行 ISA Server 2006 管理控制台,展开左边控制面板中的配置,然后点击常规,然后在中部的细节面板中点击指定 RADIUS 和 LDAP 服务器

在弹出的身份验证服务器对话框,点击 LDAP 服务器,然后点击添加

在弹出的添加 LDAP 服务器集对话框,在 LDAP 服务器集名输入服务器集的名称,在此我输入为 Berlin,并点击添加添加 LDAP 服务器,在此我添加的 LDAP 服务器为域 WinSVR.ORG 的域控制器 Berlin;在输入活动目录域名栏,输入 LDAP 服务器位于的活动目录域 winsvr.org;由于普通的域控制器只能验证属于本地域的用户,因此默认情况下是访问全局编录服务器,从而可以验证森林中的用户;另外,默认情况下是通过非加密的LDAP协议进行访问,为了更高的安全性,可以配置为通过加密的LDAPS协议进行访问,但是要求 ISA Server 信任颁发 LDAP 服务器证书的证书颁发机构;最后在底部输入具有此 LDAP 服务器访问权限的用户名和密码,点击确定

LDAP 服务器集配置完以后,需要定义登录表达式。登录表达式用于决定哪个域的用户由哪个 LDAP 服务器集进行验证,点击新建添加登录表达式,添加格式为“域名\*”,在此我设置为将所有的域均通过 Berlin 进行验证,因此输入为“*”,完成后如下图所示,如果针对相同的登录表达式具有多个 LDAP 服务器集,则根据登录表达式的优先级进行处理,你可以点击上下箭头调整它们的优先级。完成后点击关闭


此时 LDAP 服务器就配置完成了,在此我创建一个 Web 发布规则,使用 LDAP 身份验证,只允许 WINSVR\Domain Admins 用户组的访问。

右击防火墙策略,指向新建,选择Web站点发布规则;在弹出的欢迎使用新建Web发布规则向导页,输入规则名称后点击下一步

选择规则动作页,选择允许,点击下一步

发布类型页,选择发布单个Web站点或负载均衡器,点击下一步

服务器连接安全性页,选择使用非安全连接来连接到被发布的Web服务器或服务器场(即使用HTTP协议进行连接),点击下一步

内部发布细节第一页,在内部站点名栏输入被发布的内部Web站点的名称(Web站点的主机名头),然后勾选使用计算机名或IP地址来连接到被发布的服务器,输入 Web 服务器的IP地址,完成后点击下一步

内部发布细节第二页,输入发布的内部Web站点的路径,在此我发布全部路径,因此直接点击下一步

公共名字细节页,选择接受外部访问请求的外部域名,在此我在接收请求栏选择任何域名,点击下一步

选择侦听器页,点击新建,在弹出的欢迎使用新建Web侦听器向导页,输入侦听器名称后点击下一步


客户端连接安全性页,选择不要求和客户端之间的SSL安全连接,点击下一步

Web侦听器IP地址页,勾选外部网络,你也可以点击选择IP地址按钮来配置Web侦听器侦听的IP地址,点击下一步

身份验证设置页,选择 HTTP 身份验证,然后选择 LDAP(活动目录),点击下一步

单点登录设置页,由于只有基于HTTP表单的身份验证才支持SSO,因此无法进行配置,直接点击下一步

正在完成新建Web侦听器向导页点击完成,在弹出的需要允许在HTTP协议上进行身份验证的警告框上点击确定,然后在选择Web侦听器页点击下一步

身份验证委派页,由于 Web 服务器上是要求 NTLM 身份验证,因此我选择 NTLM 身份验证,点击下一步

用户集页,我们需要创建一个 LDAP 用户集,因此选择默认的所有经过身份验证的用户,点击移除,然后点击添加;在弹出的添加用户对话框上点击新建



在弹出的欢迎使用新建用户集向导页,输入用户集名称后点击下一步

用户页,点击添加,然后选择 LDAP

在弹出的添加 LDAP 用户页,选择 LDAP 服务器集为 Berlin,然后选择指定的用户组或用户,输入 winsvr\domain admins,点击确定

在弹出的用户身份验证对话框上,输入具有访问 LDAP 服务器权限的用户账户和密码,用户账户必须采用活动目录可以识别的格式(如前所述),然后点击确定

然后在用户页点击下一步;在正在完成新建用户集向导页,点击完成

然后在用户集页,点击下一步;在正在完成新建Web发布规则向导页点击完成,此时Web发布规则就创建好了。

默认情况下, ISA Server 2006 拒绝在HTTP协议上进行身份验证,因此我们需要修改此选项,在对应的 Web 侦听器属性的身份验证标签点击高级,然后在弹出的高级身份验证选项对话框上,勾选允许基于HTTP的客户端身份验证,点击确定

此时,我们在外部客户上访问进行测试。访问时要求进行身份验证,输入相应的用户身份验证信息,

访问成功,

在 ISA Server 外部网卡上捕获的数据包如下图所示,可以看出外部客户端和 ISA Server 采用的是基本身份验证,

但是从 Web 服务器上捕获的数据包可以看出,ISA Server 使用 NTLM 验证方式进行的身份验证委派。

并且从 ISA Server 的日志可以看出,ISA Server 通过访问全局编录服务器进行的身份验证;

在客户端提交的身份验证信息通过验证后,ISA Server 才允许客户端的访问。


分享到