无法在 Windows XP Service Pack 2 中启动 Windows 防火墙服务
察看本文应用于的产品
文章编号:892199最后修改:2007年2月8日修订:10.2
重要说明
:本文包含有关如何修改注册表的信息。修改注册表之前,一定要先进行备份,并且一定要知道在发生问题时如何还原注册表。有关如何备份、还原和修改注册表的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
256986
(http://support.microsoft.com/kb/256986/) Microsoft Windows 注册表说明
本页
症状
原因
解决方案
方法 1:还原 SharedAccess 服务的默认安全描述符
方法 2:还原 SharedAccess 服务的默认 SD
状态
更多信息
SC.exe(服务控制程序)实用工具
安全模板
以编程方式分配权限
在 DCOMcnfg GUI 中查看服务权限设置
注册表输出示例
参考
症状安装 Microsoft 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
?使用 SC 查询命令确定 Windows 防火墙/Internet 连接共享服务的状态时,会输出以下内容: C:/>sc query sharedaccessSERVICE_NAME:sharedaccessTYPE :20 WIN32_SHARE_PROCESSSTATE :1 STOPPED (NOT_STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN)WIN32_EXIT_CODE :-2147467243 (0x80004015)SERVICE_EXIT_CODE :0 (0x0)CHECKPOINT :0x0WAIT_HINT :0x0
?如果尝试在命令提示符处使用 net start sharedaccess
命令启动 Windows 防火墙/Internet 连接共享 (ICS) 服务,会输出以下内容: C:/>net start sharedaccess The Windows Firewall/Internet Connection Sharing (ICS) service is starting. The Windows Firewall/Internet Connection Sharing (ICS) service could not be started. A system error has occurred.System error 16405 has occurred.The system cannot find message text for message number 0x4015 in the message file for BASE.
注意
: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 帐户。
回到顶端
解决方案要解决此问题,请使用以下方法之一:
回到顶端
方法 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 strings”(ACE 字符串):
http://msdn2.microsoft.com/en-us/library/aa374928.aspx
(http://msdn2.microsoft.com/en-us/library/aa374928.aspx)
注意
:要打开命令提示符,请单击“开始”,单击“运行”,在“打开”框中,键入 CMD,然后单击“确定”。
如果您看到任何其他输出与本例所示内容相同,则可以使用带 sdset
选项的
SC
命令重置 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 不能保证您可以解决这些问题。修改注册表需要您自担风险。
要还原 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.在“文件名”框中,键入 C:/reg_AppID_CLSID.reg,然后单击“打开”。8.单击“确定”,然后退出注册表编辑器。9.启动 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://www.microsoft.com/china/technet/prodtechnol/winxppro/support/wftshoot.mspx (http://www.microsoft.com/china/technet/prodtechnol/winxppro/support/wftshoot.mspx)
有关 Windows XP 安全指南的更多信息,请访问下面的 Microsoft 网站: http://http://www.microsoft.com/china/technet/security/prodtech/windowsxp/secwinxp/xpsgch04.mspx (http://www.microsoft.com/china/technet/security/prodtech/windowsxp/secwinxp/xpsgch04.mspx)
回到顶端
SC.exe(服务控制程序)实用工具SC.exe 实用工具与服务控制程序和已安装的服务进行通信。SC.exe 检索和设置关于服务的控制信息。您可以使用 SC.exe 测试和调试服务程序。可以对注册表中存储的服务属性进行设置,使之控制服务应用程序在引导时的启动方式,并控制它们作为后台进程的运行方式。SC.exe 参数可以配置特定服务、检索服务的当前状态并停止和启动服务。您可以创建批处理文件,调用各种 SC.exe 命令来自动执行服务的启动或关闭序列。SC.exe 提供的功能与“控制面板”中“管理工具”项目中的“服务”类似。
有关 SC.exe 实用工具的更多信息,请访问下面的 Microsoft 网站: http://technet2.microsoft.com/windowsserver/en/library/0A658E97-51D5-4109-B461-A474C799964E1033.mspx (http://technet2.microsoft.com/windowsserver/en/library/0A658E97-51D5-4109-B461-A474C799964E1033.mspx)
回到顶端
安全模板有关安全模板的更多信息,请参见以下 Microsoft 网站中的“Data Security and Data Availability for End Systems”(终端系统的数据安全性和数据可用性): http://www.microsoft.com/technet/Security/bestprac/bpent/sec3/datavail.mspx (http://www.microsoft.com/technet/Security/bestprac/bpent/sec3/datavail.mspx)
有关 Windows XP 安全指南第 2 版的更多信息,请访问下面的 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/library/default.asp?url=/library/zh-cn/vcsample98/html/vcsmpdcompermpermissionsforcomserver.asp (http://msdn.microsoft.com/library/default.asp?url=/library/zh-cn/vcsample98/html/vcsmpdcompermpermissionsforcomserver.asp)
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
文章编号:892199最后修改:2007年2月8日修订:10.2
本页
症状安装 Microsoft 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
事件来源: 服务控制管理程序
事件类型: 信息
事件类别: 无
描述:
Windows 防火墙/Internet 连接共享 (ICS) 服务进入停止状态。
事件 ID: 7023
来源:服务控制管理程序
类型: 错误
描述:
Windows 防火墙/Internet 连接共享 (ICS) 服务因以下错误而终止:
The class is configured to run as a security id different from the caller
?使用 SC 查询命令确定 Windows 防火墙/Internet 连接共享服务的状态时,会输出以下内容: C:/>sc query sharedaccessSERVICE_NAME:sharedaccessTYPE :20 WIN32_SHARE_PROCESSSTATE :1 STOPPED (NOT_STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN)WIN32_EXIT_CODE :-2147467243 (0x80004015)SERVICE_EXIT_CODE :0 (0x0)CHECKPOINT :0x0WAIT_HINT :0x0
?如果尝试在命令提示符处使用
原因如果在安装 Windows XP SP2 之前对计算机应用了来自 Windows XP 安全指南的某些管理模板,可能会出现此问题。出现此问题的原因是,作为 Windows XP 安全指南的一部分发布的某些安全模板中存在一个问题。
在 Windows XP SP2 中,远程过程调用 (RPC) 是使用 NT Authority/NetworkService 帐户运行的。Windows XP SP2 中服务的默认安全描述符对 Authenticated Users 组授予“读取”访问权限,该组包括 NT Authority/NetworkService 帐户。
解决方案要解决此问题,请使用以下方法之一:
方法 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)
如果您看到任何其他输出与本例所示内容相同,则可以使用带
有关
方法 2:还原 SharedAccess 服务的默认 SD
要还原 SharedAccess 服务的默认 SD,请按照下列步骤操作: 1.单击“开始”,单击“运行”,在“打开”框中键入 regedit,然后单击“确定”。2.找到并单击下面的注册表子项:
如果您运行 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.在“文件名”框中,键入 C:/reg_AppID_CLSID.reg,然后单击“打开”。8.单击“确定”,然后退出注册表编辑器。9.启动 Windows 防火墙/Internet 连接共享 (ICS) 服务。为此,请在命令提示符处键入 NET START SharedAccess,然后按 Enter。
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://www.microsoft.com/china/technet/prodtechnol/winxppro/support/wftshoot.mspx
有关 Windows XP 安全指南的更多信息,请访问下面的 Microsoft 网站: http://http://www.microsoft.com/china/technet/security/prodtech/windowsxp/secwinxp/xpsgch04.mspx
SC.exe(服务控制程序)实用工具SC.exe 实用工具与服务控制程序和已安装的服务进行通信。SC.exe 检索和设置关于服务的控制信息。您可以使用 SC.exe 测试和调试服务程序。可以对注册表中存储的服务属性进行设置,使之控制服务应用程序在引导时的启动方式,并控制它们作为后台进程的运行方式。SC.exe 参数可以配置特定服务、检索服务的当前状态并停止和启动服务。您可以创建批处理文件,调用各种 SC.exe 命令来自动执行服务的启动或关闭序列。SC.exe 提供的功能与“控制面板”中“管理工具”项目中的“服务”类似。
有关 SC.exe 实用工具的更多信息,请访问下面的 Microsoft 网站: http://technet2.microsoft.com/windowsserver/en/library/0A658E97-51D5-4109-B461-A474C799964E1033.mspx
安全模板有关安全模板的更多信息,请参见以下 Microsoft 网站中的“Data Security and Data Availability for End Systems”(终端系统的数据安全性和数据可用性): http://www.microsoft.com/technet/Security/bestprac/bpent/sec3/datavail.mspx
有关 Windows XP 安全指南第 2 版的更多信息,请访问下面的 Microsoft 网站: 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/library/default.asp?url=/library/zh-cn/vcsample98/html/vcsmpdcompermpermissionsforcomserver.asp
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