此主题提供启用身份验证的一般过程,以及配置匿名、基本、摘要式、高级摘要式和集成 Windows 身份验证设置的详细过程。如果对这些身份验证方法不太熟悉,请在服务器上启用和配置这些身份验证设置之前,参阅关于身份验证。
可以对任何网站或 FTP 站点、虚拟目录或文件启用任意一种或多种身份验证设置。默认情况下,启用匿名身份验证和集成 Windows 身份验证。
注意
摘要式和集成 Windows 身份验证不能用于 FTP 站点。必须在 FTP 站点的站点级设置可用的身份验证设置。
注意 密码只能与本地计算机上所定义的匿名用户帐户同步,而不能与网络中其他计算机上的匿名帐户同步。
要点 如果更改网站或虚拟目录的安全性设置,Web 服务器将提示您重新设置此站点或目录下子级站点或子级目录的安全设置。如果选择接受这些设置,子级站点或子级目录将继承父站点或父目录的安全设置。有关设置属性的信息,请参阅关于网站和 FTP 站点中的“站点属性和属性继承”。
默认情况下,Windows 用户组 Guests 包含 IUSR_computername 帐户。可以创建多个匿名帐户,每个网站或 FTP 站点、目录或文件对应一个帐户。通过授予这些帐户不同的访问权限,或将这些帐户指派到不同的 Windows 用户组,允许用户匿名访问公共网站和 FTP 的各部分内容。
匿名帐户必须允许用户从本地登录。如果帐户没有“本地登录”权限,IIS 将无法为任何匿名请求提供服务。默认情况下,未向域控制器的 IUSR_computername 帐户指派此权限。必须将此帐户的权限更改为“本地登录”才能允许匿名请求。
还可以更改 Windows 中 IUSR_computername 帐户的安全权限。但是,如果匿名用户帐户对特定资源没有访问权限,Web 服务器将拒绝建立与此资源的匿名连接。详细信息,请参阅设置 Web 和 FTP 权限。
要点 如果更改 IUSR_computername 帐户,将会影响由 Web 服务器提供服务的所有匿名请求。修改此账户时须小心谨慎。
启用基本身份验证不会自动配置 Web 服务器对用户进行身份验证。必须按上所述创建 Windows 用户帐户并正确设置 NTFS 权限。
要使用基本身份验证正确验证用户身份,Windows 用户帐户必须具有“本地登录”用户权限。因为基本身份验证将模拟一个本地用户,或实际登录到服务器的用户,因此必须指派此权限。默认情况下,未向 Windows 主域控制器 (PDC) 中的用户帐户授予“本地登录”权限。有关信息,请参阅“Active Server Pages 指南”中的 LogonMethod 参考。
要点 基本身份验证方法以非加密形式在网络上传输用户名和密码。可以将 Web 服务器的加密功能与基本身份验证方法结合使用,确保通过网络传输的用户帐户信息的安全性。详细信息,请参阅关于加密。
必须选择默认的登录域。详细信息,请参阅设置默认登录域。
| 配置数据库级别 | 说明 |
| W3SVC | W3SVC 级别也称为 IISWebService 级别,是配置数据库中可以配置高级摘要式身份验证的最高级别。如果此级别下面的级别没有专门配置,将继承此级别的配置。 |
| W3SVC/n | W3SVC/n 级别也称为 IISWebServer 级别,是一个专门的网站,其中 n 是站点编号。从 1 开始对这些站点编号,默认网站的编号为 1。 |
| W3SVC/n/root | W3SVC/n/Root 级别也称为 IISWebVirtualDir 级别,是网站的开始位置,其中 n 是站点的编号。 |
| W3SVC/n/root/vdir | W3SVC/n/ROOT/WebVirtualDir 级别也称为 IISWebVirtualDir 级别,是网站中的虚拟目录,其中 n 是站点的编号。 |
| W3SVC/n/root/vdir/webdir | W3SVC/n/Root/WebVirtualDir/WebDir 级别也称为 IISWebDirectory 级别,是虚拟目录中的物理目录,其中 n 是站点编号。 |
| W3SVC/n/root/vdir/file | 这是 W3SVC/n/ROOT/WebVirtualDir 级别中的单个文件,其中 n 是站点编号。 |
| W3SVC/n/root/vdir/webdir/file | 这是 W3SVC/n/Root/WebVirtualDir/WebDir 级别中的单个文件,其中 n 是站点编号。 |
可以在 IIS 服务器上配置一个或多个领域名。如果使用多个领域名,必须分别在配置数据库的不同级别进行配置。例如,您可能希望配置多个领域名,允许 domain1 的成员访问销售虚拟目录,允许 domain2 的成员访问工程虚拟目录。如果 domain1 和 domain2 没有建立信任关系,配置多个领域名非常有用。有关域的详细信息,请参阅 Windows XP 联机文档。
如果配置数据库中的子节点没有配置领域名,此子节点将从配置了领域名的上一级节点继承领域名。如果上一级节点也没有配置领域名,IIS 将发送自己的计算机名作为领域名。如果 IIS 发送自己的计算机名作为领域名,但具有 Active Direc tory 的 Windows XP 域控制器上没有运行 IIS,摘要式身份验证将失败。虽然也可以在域控制器上运行 IIS,但这样做不安全而且会影响性能,建议不要这样做。
命令提示符窗口显示:
realm : <string> "redmond"
要点 如果执行了前两个步骤,但没有配置 UseDigestSSP 配置数据库关键字,则使用的将是摘要式身份验证,而非高级摘要式身份验证。
| 配置数据库级别 | 说明 |
| W3SVC | W3SVC 级别也称为 IISWebService 级别,它是配置数据库中可以配置高级摘要式身份验证的最高级别。如果此级别下面的级别没有专门配置,将继承此级别的配置。 |
| W3SVC/n | W3SVC/n 级别也称为 IISWebServer 级别,是一个专门的网站,其中 n 是站点编号。从 1 开始对这些站点编号,默认网站的编号为 1。 |
| W3SVC/n/root | W3SVC/n/Root 级别也称为 IISWebVirtualDir 级别,是网站的开始位置,其中 n 是站点的编号。 |
| W3SVC/n/root/vdir | W3SVC/n/ROOT/WebVirtualDir 级别也称为 IISWebVirtualDir 级别,是网站中的虚拟目录,其中 n 是站点的编号。 |
| W3SVC/n/root/vdir/webdir | W3SVC/n/Root/WebVirtualDir/WebDir 级别也称为 IISWebDirectory 级别,是虚拟目录中的物理目录,其中 n 是站点编号。 |
| W3SVC/n/root/vdir/file | 这是 W3SVC/n/ROOT/WebVirtualDir 级别中的单个文件,其中 n 是站点的编号。 |
| W3SVC/n/root/vdir/webdir/file | 这是 W3SVC/n/Root/WebVirtualDir/WebDir 级别中的单个文件,其中 n 是站点的编号。 |
可以在 IIS 服务器上配置一个或多个领域名。如果使用多个领域名,必须分别在配置数据库的不同级别进行配置。例如,您可能希望配置多个领域名,允许 domain1 的成员访问销售虚拟目录,允许 domain2 的成员访问工程虚拟目录。如果 domain1 和 domain2 没有建立信任关系,配置多个领域名非常有用。有关域的详细信息,请参阅 Windows XP 联机文档。
如果配置数据库中的子节点没有配置领域名,此子节点将从配置了领域名的上一级节点继承领域名。如果上一级节点也没有配置领域名,IIS 将发送自己的计算机名作为领域名。如果 IIS 发送自己的计算机名作为领域名,但具有 Active Directory 的 Windows XP 域控制器上没有运行 IIS,高级摘要式身份验证将失败。虽然也可以在域控制器上运行 IIS,但这样做不安全而且会影响性能,建议不要这样做。
命令提示符窗口显示:
realm : <string> "redmond"
高级摘要式身份验证使用称为 UseDigestSSP 的配置数据库关键字。此配置数据库关键字是摘要式和高级摘要式安全支持提供程序接口 (SSPI) 代码之间的切换开关。设置此关键字后,有效的属性值只有 1 (TRUE)、0 (FALSE) 或空。如果属性值为 TRUE,则使用新的高级摘要式 SSPI 代码。设置为其他值(FALSE、空或未设置)时,IIS 使用摘要式 SSPI 代码。
可以在配置数据库的任何级别配置 UseDigestSSP 配置数据库属性,如表 2 所示。如果没有对子节点进行专门配置,它将从已配置好的上一级继承配置。有关 UseDigestSSP 配置数据库关键字的详细信息,请参阅“按字母排序的属性列表”中的 UseDigestSSP。
使用此示例测试是否在 w3svc/1 级别配置了 UseDigestSSP 配置数据库关键字。
只有 Microsoft Internet Explorer 2.0 或更高版本支持集成 Windows 身份验证。集成 Windows 身份验证不能跨代理服务器或其他防火墙应用程序运行。如果由于用户凭据不正确或其他原因导致集成 Windows 身份验证失败,浏览器将提示用户输入用户名和密码。