尝试在 Windows Server 2003 或 Windows XP 中安装大型 Windows Installer 程序包或大型 Windows Installer 修补程序包时出现错误消息:“Error 1718. File was rejected by digital signature policy”(错误 1718。文件被数字签名策略拒绝)

<script type="text/javascript">function loadTOCNode(){}</script>

文章编号

:

925336

最后修改

:

2007年4月3日

修订

:

2.0


重要说明:本文包含有关如何修改注册表的信息。修改注册表之前,一定要先对其进行备份,并且一定要知道在出现问题时如何还原注册表。有关如何备份、还原和修改注册表的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

256986 (http://support.microsoft.com/kb/256986/)


症状

<script type="text/javascript">loadTOCNode(1, 'symptoms');</script>


FileName



原因

<script type="text/javascript">loadTOCNode(1, 'cause');</script>


当计算机没有足够的连续内存可供 Windows Server 2003 或 Windows XP 用于验证是否对 .msi 包或 .msp 包正确进行了签名时将出现此问题。



替代方法

<script type="text/javascript">loadTOCNode(1, 'workaround');</script>


警告:如果使用注册表编辑器或其他方法错误地修改了注册表,则可能会出现严重问题。这些问题可能需要重新安装操作系统才能解决。Microsoft 不能保证可以解决这些问题。修改注册表需要您自担风险。



要解决此问题,请在尝试安装程序包之前将 PolicyScope 注册表值更改为 1。为此,请按照下列步骤操作。



注意:如果将计算机加入到域中,则域策略更新可能会覆盖您对注册表所做的更改。强烈建议在执行以下步骤之前从域中断开计算机。


1.

依次单击“开始”和“运行”,键入 regedit,然后单击“确定”。

2.

在注册表编辑器中,找到并单击下面的注册表项:


HKEY_LOCAL_MACHINE/Software/Policies/Microsoft/Windows/Safer/CodeIdentifiers

注意:在修改此注册表项之前,建议先备份此注册表项。为此,右键单击“CodeIdentifiers”,然后单击“导出”。将文件保存到可在计算机上找到此文件的位置中。

3.

更改 PolicyScope 的注册表值。为此,请双击“PolicyScope”,然后将设置从 0 更改为 1。

4.

关闭注册表编辑器。

5.

依次单击“开始”、“运行”,键入 cmd,然后单击“确定”以打开命令提示符窗口。

6.

在命令提示符下,键入以下命令并按 Enter:


net stop msiserver

如果 Windows Installer 服务当前正在后台运行,则此命令将停止该服务。该服务停止后,请关闭命令提示符窗口,然后转到步骤 7。


注意:如果在命令提示符处收到以下消息,请关闭命令提示符窗口,然后转到步骤 7:


未启动 Windows Installer 服务

7.

收到“症状”部分所述的错误消息后,请安装要尝试安装的程序包。

8.

安装了程序包之后,重复步骤 1 和 2。然后,将 PolicyScope 注册表值更改回 0。

9.

如果从域中断开了计算机,请重新加入域,然后重新启动计算机。


注意:如果未从域中断开计算机,则不必重新启动计算机。

如果以上步骤不能解决该问题,请按照下列步骤操作:


1.

单击“开始”,单击“运行”,键入 control admintools,然后单击“确定”。

2.

双击“本地安全策略”。

3.

单击“软件限制策略”。


注意:如果未列出软件限制,请右击“软件限制策略”,然后单击“新建策略”。

4.

在“对象类型”下,双击“强制”。

5.

单击“除本地管理员以外的所有用户”,然后单击“确定”。

6.

重新启动计算机。

重要说明:在按照以上步骤操作后,本地管理员就可以安装 .msi 包或 .msp 包。安装了程序包之后,请按照以上步骤重置强制级别。在步骤 5 中,单击“所有用户”而不是单击“除本地管理员以外的所有用户”。



更多信息

<script type="text/javascript">loadTOCNode(1, 'moreinformation');</script>


数字签名可帮助确保程序包不会被篡改。当 Windows Installer 调用 SaferIdentifyLevel 函数时,Windows Server 2003 和 Windows XP 使用其他安全级别,即软件限制策略。

当 Windows Installer 同时调用 SaferIdentifyLevel 函数和 SAFER_CRITERIA_IMAGEHASH 标志时,整个程序包被加载到计算机上的内存中。计算机必须拥有程序包大小所需的足够连续内存。如果计算机没有足够的连续内存,则会出现错误。由于出现错误,Windows Installer 将无法验证是否对该程序包正确地进行了签名。因此,会收到“症状”部分中提到的错误消息。

出现此问题时,以下日志数据将显示事件的顺序:

MSI (s) (BA:AD) [12:00:00:000]:SOFTWARE RESTRICTION POLICY:Verifying object --> 'D:/WINDOWS/Installer/50baad.msp' against software restriction policy MSI (s) (BA:AD) [12:00:00:000]:SOFTWARE RESTRICTION POLICY:D:/WINDOWS/Installer/50baad.msp has a digital signature MSI (s) (BA:AD) [12:00:00:000]:SOFTWARE RESTRICTION POLICY:SaferIdentifyLevel reported failure.Assuming untrusted.. . (GetLastError returned 5) MSI (s) (BA:AD) [12:00:00:000]:The installation of D:/WINDOWS/Installer/50baad.msp is not permitted due to an error in software restriction policy processing.The object cannot be trusted.




这篇文章中的信息适用于:


Microsoft Windows Server 2003 Standard Edition


Microsoft Windows Server 2003, Standard x64 Edition


Microsoft Windows Server 2003 Enterprise Edition


Microsoft Windows Server 2003, Enterprise x64 Edition


Microsoft Windows Server 2003 64-bit Enterprise Edition


Microsoft Windows Server 2003 Datacenter Edition


Microsoft Windows Server 2003, Datacenter x64 Edition


Microsoft Windows Server 2003, Datacenter Edition for 64-Bit Itanium-Based Systems


Microsoft Windows Server 2003 Web Edition


Microsoft Windows Server 2003 R2 Standard Edition (32-bit x86)


Microsoft Windows Server 2003 R2 Standard Edition (64-Bit x86)


Microsoft Windows Server 2003 R2 Enterprise Edition (32-Bit x86)


Microsoft Windows Server 2003 R2 Enterprise Edition (64-Bit x86)


Microsoft Windows Server 2003 R2 Datacenter Edition (32-Bit x86)


Microsoft Windows Server 2003 R2 Datacenter Edition (64-Bit x86)


Microsoft Windows XP Professional Edition


Microsoft Windows XP Professional x64 Edition


Microsoft Windows XP Home Edition


Microsoft Windows XP Media Center Edition



关键字: 

kberrmsg kbtshoot kbprb KB925336

Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、