文章编号: 892199 - 最后修改: 2011年9月27日 - 修订: 3.0

Windows XP 安全指南中的某些管理模板可能会阻止您启动 Windows XP Service Pack 2 中的 Windows 防火墙服务

系统提示此文章适用于与您所使用的操作系统不同的操作系统。文章内容可能与您无关,并且已被禁用。
注意
本文适用于高级计算机用户。如果您对高级问题诊断感到困惑,您可能希望向其他人寻求帮助或联系支持部门。有关如何操作的信息,请访问以下 Microsoft 网站:
http://support.microsoft.com/contactus (http://support.microsoft.com/contactus/)

本页

展开全部 | 关闭全部

症状

安装 Windows XP Service Pack 2 (SP2) 后,无法启动 Windows 防火墙服务。您可能会遇到下列一个或多个症状:
  • 在“控制面板”中单击“Windows 防火墙”时,可能收到以下错误消息:
    Windows Firewall settings cannot be displayed because the associated service is not running.Do you want to start the Windows Firewall/Internet Connection Sharing (ICS) service?
    如果单击“是”,则会收到以下错误消息:
    Windows cannot start the Windows Firewall/Internet Connection Sharing (ICS) service.
  • 如果您试图通过“服务”手动启动 Windows 防火墙服务,可能会收到以下错误消息:
    Could not start the Windows Firewall/Internet Connection Sharing (ICS) service on Local Computer.
    Error 0x80004015:The class is configured to run as a security id different from the caller
    注意:要打开“服务”,请单击“开始”,单击“控制面板”,双击“管理工具”,然后双击“服务”。有关如何使用“服务”的信息,请在“服务”中的“操作”菜单上,单击“帮助”
  • 系统事件日志中可能显示下列事件:

    事件 ID:7036
    事件来源:服务控制管理程序
    事件类型:信息
    事件类别:无
    描述:
    Windows 防火墙/Internet 连接共享 (ICS) 服务进入停止状态。

    事件 ID:7023
    来源:服务控制管理器
    类型:错误
    描述:
    Windows 防火墙/Internet 连接共享 (ICS) 服务因以下错误而终止:
    The class is configured to run as a security id different from the caller(已将此类配置为使用与调用方不同的安全 ID 运行)

  • 使用 SC 查询命令确定 Windows 防火墙/Internet 连接共享服务的状态时,会输出以下内容:
    C:\>sc query sharedaccess SERVICE_NAME:sharedaccess TYPE :20 WIN32_SHARE_PROCESS STATE :1 STOPPED (NOT_STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN) WIN32_EXIT_CODE :-2147467243 (0x80004015) SERVICE_EXIT_CODE :0 (0x0) CHECKPOINT :0x0 WAIT_HINT :0x0
  • 如果尝试在命令提示符处使用 net start sharedaccess 命令启动 Windows 防火墙/Internet 连接共享 (ICS) 服务,会输出以下内容:
    C:\>net start sharedaccess The Windows Firewall/Internet Connection Sharing (ICS) service is starting.Windows 防火墙/Internet 连接共享 (ICS) 服务无法启动。发生了系统错误。发生系统错误 16405。系统在 BASE 的消息文件中找不到消息编号为 0x4015 的消息文本。
注意:Windows XP SP2 的 Windows 防火墙功能取代了 Windows XP 早期版本中的 Internet 连接防火墙 (ICF)。

原因

如果在安装 Windows XP SP2 之前对计算机应用了来自 Windows XP 安全指南的某些管理模板,可能会出现此问题。出现此问题的原因在于作为 Windows XP 安全指南的一部分发布的某些安全模板中存在问题。

在 Windows XP SP2 中,远程过程调用 (RPC) 是使用 NT Authority\NetworkService 帐户运行的。Windows XP SP2 中服务的默认安全描述符为 Authenticated Users 组授予“读取”访问权限,该组包括 NT Authority\NetworkService 帐户。

解决方案

若要我们为您修复此问题,请转到“帮我修复此问题”部分。如果您想亲自修复此问题,请转到“我自己修复此问题”部分。

帮我修复此问题



若要自动修复此问题,请单击“修复”按钮或链接。单击“文件下载”对话框中的“运行”,然后按照“修复”向导中的步骤操作。


修复此问题
Microsoft Fix it 50638


注意
  • 此向导可能只提供英文版本。但是,Windows?的其他语言版本也提供自动修复功能。
  • 如果所使用的计算机中并未出现此问题,则可将“修复此问题”解决方案保存至闪存驱动器或 CD 中,然后在出现此问题的计算机上运行该解决方案。



我自己修复此问题

高级用户

这些方法适用于高级计算机用户。如果您对高级解决方案感到困惑,您可能需要向其他人寻求帮助或联系支持部门。有关如何与支持部门联系的信息,请访问以下 Microsoft 网站:
http://support.microsoft.com/contactus?ln=zh-cn#tab0 (http://support.microsoft.com/contactus?ln=zh-cn#tab0)


要解决此问题,请使用以下方法之一:

方法 1:还原 SharedAccess 服务的默认安全描述符

用于控制 Windows 防火墙/Internet 连接共享 (ICS) 服务的服务称为 SharedAccess。默认安全描述符 (SD) 对 LocalSystem (SY)、PowerUsers (PU) 和 AuthenticatedUsers (AU) 授予“读取”访问权限,对 Administrators (BA) 授予“完全控制”访问权限。

要查看 SharedAccess 的 SD,请在命令提示符处键入 SC sdshow SharedAccess,然后按 Enter。将显示默认 SD,它类似于以下内容:
D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)
注意:有关如何解释字符串的详细信息,请访问以下 MSDN 网站并搜索 SDDL 或“ACE 字符串”:
http://msdn2.microsoft.com/zh-cn/library/aa374928.aspx (http://msdn2.microsoft.com/zh-cn/library/aa374928.aspx)
注意:要打开命令提示符,请单击“开始”,单击“运行”,在“打开”框中,键入 CMD,然后单击“确定”
如果您看到与本例所示内容相同的任何其他输出,则可以使用 SC 命令和 sdset 选项重置 SD。要还原 SharedAccess 服务的默认 SD,请在命令提示符处键入以下命令,然后按 Enter:
SC sdset SharedAccess D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)
有关 SC sdset 命令的详细信息,请参阅 Windows 帮助。

方法 2:还原 SharedAccess 服务的默认 SD

重要说明:此部分、方法或任务包含有关如何修改注册表的步骤。但是,注册表修改不当可能会出现严重问题。因此,请一定严格按照下列步骤操作。为了获得进一步保护,请在修改注册表之前对其进行备份。这样就可以在出现问题时还原注册表。有关如何备份和还原注册表的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
322756? (http://support.microsoft.com/kb/322756/zh-cn/ ) 如何在 Windows 中备份和还原注册表


要还原 SharedAccess 服务的默认 SD,请按照下列步骤操作:
  1. 单击“开始”,单击“运行”,在“打开”框中键入 regedit,然后单击“确定”。
  2. 找到并单击下面的注册表子项:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Security
  3. 删除 Security 注册表子项(如果存在)。
  4. 退出注册表编辑器,然后重新启动计算机。
注意:如果存在 Security 注册表子项,请务必将其删除。这样可以在重新启动计算机时,确保使用默认安全描述符来启动 Windows 防火墙。

如果您运行 Microsoft 组件对象模型 (COM)、DCOM 或 Microsoft COM+ 应用程序来控制 Windows 防火墙服务,也必须执行以下步骤:
  1. 单击“开始”,单击“运行”,在“打开”框中键入 regedit,然后单击“确定”。
  2. 找到并单击下面的注册表子项:
    HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AppID\{ce166e40-1e72-45b9-94c9-3b2050e8f180}
  3. 在“文件”菜单上,单击“导出”
  4. 在“文件名”框中,键入 C:\reg_AppID_CLSID.reg,然后单击“保存”以保存注册表文件。
  5. 删除 {ce166e40-1e72-45b9-94c9-3b2050e8f180} 注册表子项。
  6. 单击“确定”,然后退出注册表编辑器。
  7. 启动 Windows 防火墙/Internet 连接共享 (ICS) 服务。为此,请在命令提示符处键入 NET START SharedAccess,然后按 Enter。
注意:可以在命令提示符处执行所有上述步骤。为此,请按照下列步骤操作:
  1. 键入以下命令,然后在每个命令后按 Enter:
    REG DELETE HKLM\SYSTEM\CurrentControlSet\Services\SharedAccess\Security /f
    REG DELETE HKLM\SOFTWARE\Classes\AppID\{ce166e40-1e72-45b9-94c9-3b2050e8f180} /f
    删除 {ce166e40-1e72-45b9-94c9-3b2050e8f180} 注册表子项是一个重要步骤。此步骤可以保证在重新导入时应用默认的安全描述符。
  2. 重新启动计算机。

状态

Microsoft 已经确认这是在“适用于”一节中列出的 Microsoft 产品中存在的问题。

更多信息

有关 Windows XP SP2 中 Windows 防火墙的更多信息,请访问下面的 Microsoft 网站:
http://technet.microsoft.com/zh-cn/library/bb457029.aspx (http://technet.microsoft.com/zh-cn/library/bb457029.aspx)
有关 Windows XP 安全指南的详细信息,请访问以下 Microsoft 网站:
http://technet.microsoft.com/zh-cn/library/cc163076.aspx (http://technet.microsoft.com/zh-cn/library/cc163076.aspx)

SC.exe(服务控制器)实用工具

SC.exe 实用工具与服务控制器和已安装的服务进行通信。SC.exe 检索和设置关于服务的控制信息。您可以使用 SC.exe 测试和调试服务程序。可以对注册表中存储的服务属性进行设置,以控制当您打开计算机时服务应用程序的启动方式,并控制它们如何作为后台进程运行。SC.exe 参数可以配置特定服务、检索服务的当前状态并停止和启动服务。您可以创建批处理文件,调用各种 SC.exe 命令来自动执行服务的启动或关闭序列。SC.exe 提供的功能与“控制面板”中“管理工具”项目中的“服务”类似。

有关 SC.exe 实用工具的更多信息,请访问下面的 Microsoft 网站:
http://technet.microsoft.com/zh-cn/library/cc706993(WS.10).aspx (http://technet.microsoft.com/zh-cn/library/cc706993(WS.10).aspx)

安全模板

有关安全模板的详细信息,请参阅以下 Microsoft 网站上的“终端系统的数据安全性和数据可用性”:
http://technet.microsoft.com/zh-cn/library/cc722919.aspx (http://technet.microsoft.com/zh-cn/library/cc722919.aspx)
有关 Windows XP 安全指南第二版的详细信息,请访问以下 Microsoft 网站:
http://www.microsoft.com/downloads/details.aspx?FamilyId=2D3E25BC-F434-4CC6-A5A7-09A8A229F118&displaylang=en (http://www.microsoft.com/downloads/details.aspx?FamilyId=2D3E25BC-F434-4CC6-A5A7-09A8A229F118&displaylang=en)
您可以使用安全模板管理单元创建和定义安全模板。为此,请执行以下步骤:
  1. 单击“开始”,单击“运行”,键入“mmc”,然后单击“确定”。
  2. 在“控制台1”窗口中,在“文件”菜单上,单击“添加/删除管理单元”。
  3. 在“添加/删除管理单元”对话框中,单击“添加”。
  4. 在“添加独立管理单元”对话框中,单击“安全模板”,单击“添加”,然后单击“关闭”。
  5. 在“添加/删除管理单元”对话框中,单击“确定”。
  6. 在“控制台1”窗口中,展开“安全模板”节点。然后展开“\system_root\Security\Templates”节点以显示可用模板的列表。
  7. 展开“\system_root\Security\Templates\securews\”节点,单击“系统服务”,然后双击“Windows 防火墙/Internet 连接共享 (ICS)”以定义该模板中的这一策略设置。

以编程方式分配权限

有关如何以编程方式向 LaunchPermission 注册表项或 AccessPermission 注册表项分配权限的信息,请访问下面的 MSDN 网站以获取示例 DCOMperm:COM 服务器代码权限:
http://msdn.microsoft.com/zh-cn/library/aa242178(VS.60).aspx (http://msdn.microsoft.com/zh-cn/library/aa242178(VS.60).aspx)
AccessPermission 注册表项设置一个用于确定访问权限的随机访问控制列表 (DACL)。LaunchPermission 注册表项设置一个 DACL,由它来确定哪些人可以启动应用程序。

LaunchPermission 注册表项是 REG_BINARY。一旦收到启动此类服务器的本地或远程请求,就会在模拟客户端时检查此值描述的 DACL。检查成功后将启用或禁用服务器的启动。如果此值不存在,则默认情况下,将以相同的方式检查计算机范围的 DefaultLaunchPermission 项,以确定能否启动类代码。

AccessPermission 注册表值是 REG_BINARY。它包含的数据描述可以访问此类的实例的主体的 DACL。一旦收到连接到此类的现有对象的请求,就会在模拟调用方时由正被调用的应用程序检查该 DACL。如果访问检查失败,则不启用连接。如果此命名值不存在,则默认情况下,将以相同的方式检查计算机范围的 DefaultAccessPermission DACL,以确定是否启用连接。

在 DCOMcnfg GUI 中查看服务权限设置

要在 DCOMcnfg 图形用户界面 (GUI) 中查看服务权限设置,请执行以下步骤:
  1. 单击“开始”,单击“运行”,在“打开”框中键入 DCOMCNFG,然后单击“确定”。
  2. 展开下列节点:
    组件服务
    计算机
    我的电脑
    DCOM 配置
  3. 右键单击“SharedAccess”,然后单击“属性”。
  4. 单击“常规”选项卡,验证其配置符合以下设置:
    应用程序名称:SharedAccess
    应用程序 ID:{ce166e40-1e72-45b9-94c9-3b2050e8f180}
    应用程序类型:本地服务
    身份验证级别:默认
    服务名称:SharedAccess
  5. 单击“标识”选项卡,验证“系统帐户 (仅用于服务)”已选中。
  6. 单击“安全”选项卡。
  7. 在“启动和激活权限”区域,单击“自定义”,然后单击“编辑”。
  8. 在“组或用户名称”框中,单击“Administrators (MACHINE_NAME\Administrators)”。验证“允许”列中的“本地激活”复选框处于选中状态,然后单击“确定”。
  9. 在“访问权限”区域中,单击“自定义”,然后单击“编辑”。验证其配置符合以下设置:
    • 在“组或用户名称”框中,单击“Administrators ( MACHINE_NAME \Administrators)”。然后,确认“允许”列中的“本地访问”复选框处于选中状态。单击“确定”。
  10. 在“配置权限”区域中,单击“自定义”,然后单击“编辑”。验证其配置符合以下设置:
    • 在“组或用户名称”框中,单击“Administrators (MACHINE_NAME\Administrators)”。然后,确认“允许”列中的“完全控制”复选框和“读取”复选框处于选中状态。
    • 在“组或用户名称”框中,单击“Power Users”。然后,确认“允许”列中的“读取”复选框处于选中状态。
    • 在“组或用户名称”框中,单击“SYSTEM”。然后,确认“允许”列中的“完全控制”复选框和“读取”复选框处于选中状态。
    • 在“组或用户名称”框中,单击“Users”。然后,确认“允许”列中的“读取”复选框处于选中状态。单击“确定”两次。

注册表输出示例

要导出注册表项的内容,请在命令提示符下键入以下命令,然后按 Enter:
REG EXPORT HKLM\SOFTWARE\Classes\AppID\{ce166e40-1e72-45b9-94c9-3b2050e8f180} C:\reg_AppID_CLSID.txt
输出文件 C:\reg_AppID_CLSID.txt 将包含与以下内容类似的文本:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AppID\{ce166e40-1e72-45b9-94c9-3b2050e8f180}] @="SharedAccess" "LocalService"="SharedAccess" "AccessPermission"=hex:01,00,14,80,34,00,00,00,50,00,00,00,00,00,00,00,14,00,\ 00,00,02,00,20,00,01,00,00,00,00,00,18,00,03,00,00,00,01,02,00,00,00,00,00,\ 05,20,00,00,00,20,02,00,00,01,05,00,00,00,00,00,05,15,00,00,00,59,51,b8,17,\ 66,72,5d,25,64,63,3b,0b,7f,a9,28,00,01,05,00,00,00,00,00,05,15,00,00,00,59,\ 51,b8,17,66,72,5d,25,64,63,3b,0b,7f,a9,28,00 "LaunchPermission"=hex:01,00,04,80,34,00,00,00,50,00,00,00,00,00,00,00,14,00,\ 00,00,02,00,20,00,01,00,00,00,00,00,18,00,09,00,00,00,01,02,00,00,00,00,00,\ 05,20,00,00,00,20,02,00,00,01,05,00,00,00,00,00,05,15,00,00,00,a0,5f,84,1f,\ 5e,2e,6b,49,ce,12,03,03,f4,01,00,00,01,05,00,00,00,00,00,05,15,00,00,00,a0,\ 5f,84,1f,5e,2e,6b,49,ce,12,03,03,f4,01,00,00
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess
注册表子项的相似输出文件将包含与以下内容类似的文本:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\system\currentcontrolset\services\SharedAccess] "DependOnGroup"=hex(7):00,00 "DependOnService"=hex(7):4e,00,65,00,74,00,6d,00,61,00,6e,00,00,00,57,00,69,00,\ 6e,00,4d,00,67,00,6d,00,74,00,00,00,00,00 "Description"="Provides network address translation, addressing, name resolution and/or intrusion prevention services for a home or small office network.""DisplayName"="Windows Firewall/Internet Connection Sharing (ICS)" "ErrorControl"=dword:00000001 "ImagePath"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,\ 74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,73,\ 00,76,00,63,00,68,00,6f,00,73,00,74,00,2e,00,65,00,78,00,65,00,20,00,2d,00,\ 6b,00,20,00,6e,00,65,00,74,00,73,00,76,00,63,00,73,00,00,00 "ObjectName"="LocalSystem" "Start"=dword:00000002 "Type"=dword:00000020

[HKEY_LOCAL_MACHINE\system\currentcontrolset\services\SharedAccess\Epoch] "Epoch"=dword:0000073e

[HKEY_LOCAL_MACHINE\system\currentcontrolset\services\SharedAccess\Parameters] "ServiceDll"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,\ 00,74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,\ 69,00,70,00,6e,00,61,00,74,00,68,00,6c,00,70,00,2e,00,64,00,6c,00,6c,00,00,\ 00

[HKEY_LOCAL_MACHINE\system\currentcontrolset\services\SharedAccess\Enum] "0"="Root\\LEGACY_SHAREDACCESS\\0000" "Count"=dword:00000001 "NextInstance"=dword:00000001

参考

828758? (http://support.microsoft.com/kb/828758/zh-cn/ ) Windows XP COM+ 1.5 Rollup Package 6 已推出
875357? (http://support.microsoft.com/kb/875357/zh-cn/ ) 解决 Windows XP Service Pack 2 中 Windows 防火墙的设置问题
892504? (http://support.microsoft.com/kb/892504/zh-cn/ ) 如果禁用 DCOM Process Launcher 服务,则无法在 Windows XP Service Pack 2、Windows XP Professional x64 Edition、Windows Server 2003 S892504 和基于 x64 的 Windows Server 2003 版本中启动 Windows 防火墙服务
920074 ? (http://support.microsoft.com/kb/920074/zh-cn/ ) 无法在 Windows XP SP2 中启动 Windows 防火墙服务
如果文章中所列的上述解决方案无法帮助您解决问题,或者如果您遇到的症状与本文所述的症状不同,请搜索 Microsoft 知识库以获取更多信息。要搜索 Microsoft 知识库,请访问下面的 Microsoft 网站:
http://support.microsoft.com/?ln=zh-cn (http://support.microsoft.com/?ln=zh-cn)
。然后,在“搜索支持(KB)”字段中键入您收到的错误消息或者键入问题描述。

Microsoft Windows XP Professional 产品文档 MSDN Microsoft 网站上的 Windows XP Professional SP2

这篇文章中的信息适用于:
  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Professional Edition
关键字:?
kbresolve kbtshoot kberrmsg kbfixme kbmsifixme KB892199
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。