本文分步介绍专用 Internet 信息服务 (IIS) 5.0 Web 服务器所需的最小权限。
警告:本文仅适用于使用基本 IIS 功能(例如,支持 HTML 静态内容或简单 Active Server Pages (ASP) 内容)的专用 Web 服务器。本文讲述的权限要求“仅”限于运行 Microsoft Windows 2000 和 IIS 5.0 的专用 Web 服务器的基本权限。本文不考虑可能需要其他权限的其他 Microsoft 产品和第三方产品。Microsoft 建议您在生产 Web 服务器上更改权限之前,阅读专门介绍 Web 服务器角色的文章并进行测试。有关其他 Microsoft 产品相关文章的链接,请参见“参考”一节。
如果您将这些权限应用到充当其他角色的 IIS 服务器(如 Microsoft Exchange Server 5.5、Microsoft Exchange Server 2000 或依赖其他权限的第三方应用程序),这些产品可能无法正常运行。
注意:本文仅适用于 IIS 5.0,不适用于任何其他版本的 IIS。
有关 IIS 4.0 所需权限的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
187506?
(http://support.microsoft.com/kb/187506/
)
IIS 4.0 所需的 NTFS 权限和用户权限
有关 IIS 6.0 所需权限的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
812614?
(http://support.microsoft.com/kb/812614/
)
IIS 6.0 的默认权限和用户权限
本文档测试包括以下功能测试:
- 超文本文档 (HTML)
- Active Server Pages (ASP)
- FrontPage 服务器扩展(如连接、编辑和保存),前提是在使用锁定工具时启用 FPSE
- 安全套接字层 (SSL) 连接
本文档
不能满足以下服务器角色或应用程序的任何特定的安全需要:
- Windows 2000 域控制器
- Microsoft Exchange 5.5 或 Microsoft Exchange 2000 Outlook Web Access
- Microsoft Small Business Server 2000
- Microsoft SharePoint Portal 或 Team Services
- Microsoft Commerce Server 2000 或 Microsoft Commerce Server 2002
- Microsoft BizTalk Server 2000 或 Microsoft BizTalk Server 2002
- Microsoft Content Management Server 2000 或 Microsoft Content Management Server 2002
- Microsoft Application Center 2000
阅读服务器和应用程序的文档,了解需要特别注意的安全事项。“参考”一节中提供了相关知识库文章的链接。
在应用本文中的权限之前,建议您运行最新版本的 IIS 锁定工具。有关此工具的其他信息,请访问下面的 Microsoft 网站:
以下程序和服务已作为测试套件的一部分安装,用于在授予本文中概括的权限之后测试服务器安全性:
- 索引服务
- 终端服务
- 脚本调试程序
- IIS
- 公用文件
- 文档
- FrontPage 服务器扩展 2000
- Internet 服务管理器 (HTML)
- WWW
- FTP
向 Administrator 和 System 授予所有权和权限
要向 System 授予权限,请按照下列步骤操作:
- 打开 Windows 资源管理器。为此,请单击“开始”,单击“程序”,然后单击“Windows 资源管理器”。
- 展开“我的电脑”。
- 右键单击系统驱动器(通常为驱动器 C),然后单击“属性”。
- 单击“安全”选项卡,然后单击“高级”以打开“本地磁盘访问控制设置”对话框。
- 单击“所有者”选项卡,单击以选中“替换子容器及对象的所有者”复选框,然后单击“应用”。
如果收到以下错误消息,请单击“继续”:将安全信息应用到 %systemroot%\Pagefile.sys 时发生了错误
- 如果收到以下错误消息,请单击“是”:
您没有读取目录 %systemroot%\System Volume Information 内容的权限。您要替换目录权限吗?将替换所有权限以授予您完全控制权限
- 单击“确定”关闭该对话框。
- 单击“添加”。
- 添加下列用户,然后授予他们 NTFS 完全控制权限:
- Administrator
- System
- Creator Owner
- 添加这些 NTFS 权限之后,单击“高级”,单击以选中“重置所有子对象的权限并允许传播可继承权限”复选框,然后单击“应用”。
- 如果收到以下错误消息,请单击“继续”:
将安全信息应用到 %systemroot%\Pagefile.sys 时发生了错误
- 重设 NTFS 权限之后,单击“确定”。
- 单击“Everyone”组,单击“删除”,然后单击“确定”。
- 打开 %systemdrive%\Program Files\Common Files 文件夹的属性,然后单击“安全”选项卡。添加用于匿名访问的帐户。默认情况下为 IUSR_<MachineName> 帐户。然后添加 Users 组。确保仅选择了下列权限:
- 打开保存 Web 内容的根目录的属性。默认情况下为 %systemdrive%\Inetpub\Wwwroot 文件夹。单击“安全”选项卡,添加 IUSR_<MachineName> 帐户和 Users 组,然后确保仅选择了下列权限:
- 如果要向 Inetpub\FTProot 或 FTP 站点的目录路径授予 NTFS 写入权限,请重复步骤 15。
注意:Microsoft 建议不要将 NTFS 写入权限授予任何目录(包括 FTP 服务使用的目录)中的匿名帐户。这可能会导致将不必要的数据上载到 Web 服务器。
在系统目录中禁用继承
- 在 %systemroot%\System32 文件夹中,选择除下列文件夹之外的所有文件夹:
- 右键单击其余文件夹,单击“属性”,然后单击“安全”选项卡。
- 单击以清除“允许可继承权限”复选框,单击“复制”,然后单击“确定”。
- 在 %systemroot% 文件夹中,选择除下列文件夹之外的所有文件夹:
- Assembly(如果有)
- Downloaded Program Files
- Help
- Microsoft.NET(如果有)
- Offline Web Pages
- System32
- Tasks
- Temp
- Web
- 右键单击其余文件夹,单击“属性”,然后单击“安全”选项卡。
- 单击以清除“允许可继承权限”复选框,单击“复制”,然后单击“确定”。
- 将权限应用到下列文件夹:
- 打开 %systemroot% 文件夹的属性,单击“安全”选项卡,添加“IUSR_<MachineName>”和“IWAM_<MachineName>”帐户以及“Users”组,然后确保仅选择下列权限:
- 打开 %systemroot%\Temp 文件夹的属性,选择“IUSR_<MachineName>”帐户(该帐户已经存在,因为它从 Winnt 文件夹继承),然后单击以选中“修改”复选框。对 IWAM_<MachineName> 帐户和 Users 组,重复此步骤。
- 如果使用 FrontPage 服务器扩展客户端(例如,FrontPage 或 Microsoft Visual InterDev),则打开 %systemdrive%\Inetpub\Wwwroot 文件夹的属性,选择“Authenticated Users”组,选择下列权限,然后单击“确定”:
NTFS 权限
下表列出了在按照“在系统目录中禁用继承”一节的步骤时应用的权限。该表仅供参考。
要应用下表中的权限,请按照下列步骤操作:
- 打开 Windows 资源管理器。为此,请依次单击“开始”、“程序”、“附件”,然后单击“Windows 资源管理器”。
- 展开“我的电脑”。
- 右键单击“%systemroot%”,然后单击“属性”。
- 单击“安全”选项卡,然后单击“高级”。
- 双击“权限”,然后从“应用于”列表中选择适当的设置。
注意:在“应用于”列中,“默认”一词指“该文件夹、子文件夹及文件”。
收起该表格展开该表格
| 目录 | 用户\组 | 权限 | 应用于 |
| %systemroot%\ (c:\winnt) | Administrator | 完全控制 | 默认 |
| System | 完全控制 | 默认 |
| Users | 读取、执行 | 默认 |
| %systemroot%\system32 | Administrators | 完全控制 | 默认 |
| System | 完全控制 | 默认 |
| Users | 读取、执行 | 默认 |
|
%systemroot%\system32\inetsrv | Administrators | 完全控制 | 默认 |
| System | 完全控制 | 默认 |
| Users | 读取、执行 | 默认 |
| Inetpub\adminscripts | Administrators | 完全控制 | 默认 |
| Inetpub\urlscan(如果有)
| Administrators | 完全控制 | 默认 |
| System | 完全控制 | 默认 |
|
%systemroot%\system32\inetsrv\metaback | Administrators | 完全控制 | 默认 |
| System | 完全控制 | 默认 |
| %systemroot%\help\iishelp\common | Administrators | 完全控制 | 该文件夹及文件 |
| System | 完全控制 | 该文件夹及文件 |
| IWAM_<MachineName> | 读取、执行 | 该文件夹及文件 |
| Network | 完全控制 | 该文件夹及文件 |
| Service | | 该文件夹及文件 |
| Users | 读取、执行 | 该文件夹及文件 |
| Inetpub\wwwroot(或内容目录) | Administrators | 完全控制 | 该文件夹及文件 |
| System | 完全控制 | 该文件夹及文件 |
| IWAM_<MachineName> | 读取、执行 | 该文件夹及文件 |
| Service | 读取、执行 | 该文件夹及文件 |
| Network | 读取、执行 | 该文件夹及文件 |
| 可选**: | Users | 读取、执行 | 该文件夹及文件 |
** 如果使用 FrontPage 服务器扩展,Authenticated Users 或 Users 组必须具有更改 NTFS 权限,才能执行创建、重命名、写入操作或从 FrontPage 类型的客户端(例如,Visual InterDev 6.0 或 FrontPage 2002)提供开发人员可能需要的功能。
在注册表中授予权限
- 单击“开始”,单击“运行”,键入 regedt32,然后单击“确定”。请不要使用注册表编辑器,因为注册表编辑器不允许在 Windows 2000 中更改权限。
- 在注册表编辑器中,找到并选择“HKEY_LOCAL_MACHINE”。
- 依次展开“System”、“CurrentControlSet”及“Services”。
- 选择“IISADMIN”项,单击“安全”(或按 Alt+S),然后选择“权限”(或按 P)。
- 单击以清除“允许将来自父系的可继承权限传播给该对象”复选框,单击“复制”,然后删除除下列用户之外的所有用户:
- Administrators(允许读取和完全控制)
- System(允许读取和完全控制)
- 单击“确定”。
- 对“MSFTPSVC”项,重复这些步骤。
- 选择“W3SVC”项,单击“安全”,然后单击“权限”。
- 单击以清除“允许将来自父系的可继承权限传播给该对象”复选框,然后删除除下列用户之外的所有用户:
- Administrators(允许读取和完全控制)
- System(允许读取和完全控制)
- Network(读取)
- Service(读取)
- IWAM_<MachineName>(读取)
- 单击“确定”。
注册表
下表列出了在执行“在注册表中授予权限”一节中的步骤时将应用的权限。该表仅供参考。
注意:首字母缩写词 HKLM 表示 HKEY_LOCAL_MACHINE。
收起该表格展开该表格
| 位置 | 用户\组 | 权限 |
| HKLM\System\CurrentControlSet\Services\IISAdmin | Administrators | 完全控制 |
| System | 完全控制 |
| HKLM\System\CurrentControlSet\Services\MsFtpSvc | Administrators | 完全控制 |
| System | 完全控制 |
| HKLM\System\CurrentControlSet\Services\w3svc | Administrators | 完全控制 |
| System | 完全控制 |
| IWAM_<MachineName> | 读取 |
在“本地安全策略”中授予权限
- 单击“开始”,单击“设置”,然后单击“控制面板”。
- 双击“管理工具”,然后双击“本地安全策略”。
- 在“本地安全设置”对话框中,展开“本地策略”,然后单击“用户权利指派”。
- 修改适当的策略:
- 双击该策略。
- 对下表中未列出的任一用户,选择并单击“删除”。
- 添加未列出的任一用户。为此,请单击“添加”,然后在“选择用户或组”对话框中选择该用户。
请注意,因为域控制器策略会替代本地策略,所以必须确保
有效策略设置与
本地策略设置相匹配。
策略
下表列出了在执行“在‘本地安全策略’中授予权限”一节中的步骤时将应用的权限。
收起该表格展开该表格
| 策略 | Users |
| 在本地登录 | Administrators |
| IUSR_<MachineName>(匿名) |
| Users(需要验证) |
| 从网络访问此计算机 | Administrators |
| ASPNet (.NET Framework) |
| IUSR_<MachineName>(匿名) |
| IWAM_<MachineName> |
| Users |
| 作为批处理作业登录 | ASPNet |
| Network |
| IUSR_<MachineName> |
| IWAM_<MachineName> |
| Service |
| 作为服务登录 | ASPNet |
| Network |
| Bypass Traverse Checking | Administrators |
| IUSR_<MachineName>(匿名) |
| Users(基本、集成、摘要) |
| IWAM_<MachineName> |
所需服务
有关 IIS 4.0 所需服务的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
189271?
(http://support.microsoft.com/kb/189271/
)
运行安全性增强的 IIS 计算机所需服务的列表
有关如何为 Windows 2000 还原默认 NTFS 权限的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
266118?
(http://support.microsoft.com/kb/266118/
)
如何为 Windows 2000 还原默认的 NTFS 权限
260985?
(http://support.microsoft.com/kb/260985/
)
XIMS:使用 CDONTS 所需的最小 NTFS 权限
324068?
(http://support.microsoft.com/kb/324068/
)
如何为特定对象设置 IIS 权限