如果默认的 CSP 已设置不正确,Microsoft 加密 API 可能不起作用

文章翻译 文章翻译
文章编号: 313494 - 查看本文应用于的产品
我们强烈建议所有用户都升级到 Microsoft Internet Information Services (IIS) 6.0 Microsoft Windows Server 2003 上运行。IIS 6.0 大大提高了 Web 基础结构安全。有关 IIS 的详细信息与安全相关的主题,请访问下面的 Microsoft 网站:
http://technet.microsoft.com/en-us/library/dd450371.aspx
重要提示: 本文包含有关修改注册表的信息。 在修改注册表之前,请务必对其进行备份,并确保您了解如何还原注册表发生问题。有关如何备份、 还原,和编辑注册表单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
256986在 Microsoft Windows 注册表的说明
展开全部 | 关闭全部

症状

当系统安全上下文 (通常是作为一项服务) 在运行时 Microsoft 加密 API 时,各种功能可能无法工作。用户环境下,也可能会出现此症状。因为许多程序使用加密 API,不可能文档以解决此问题的每个可能的错误消息。但是,以下列表描述了一些更常见的症状:
  • 当试图在基于 Windows 2000 的服务器上本地启动 Internet 服务管理器管理单元时,您可能会收到以下错误消息:
    无法枚举的 web 站点,因为出现以下错误: 出现内部错误。
  • 当试图通过使用 Adsutil.vbs 或 Mdutil.exe 访问元数据库时,您可能会收到以下错误消息:
    ErrNumber:-2146893792 (0x80090020)
    试图枚举到对象的错误 (GetObject 失败): w3svc
  • 无法启动终端服务授权,并可能会生成以下事件:
    事件 ID 39
    源: TermSrvLicensing
    事件字符串: 无法生成新的公共/专用密钥,原因是出现了错误无法获取 Crypt 上下文错误 80090016。
  • 当试图手动启动服务时,您可能会收到以下错误消息:
    Windows 无法启动终端服务授权本地计算机上。有关详细的信息查看系统事件日志。这是否非 Microsoft 服务,请与服务供应商联系,请参阅服务特定的错误代码-1073676287。
  • 将失败自动注册,并可能会生成以下事件:
    事件类型: 警告
    事件源: Winlogon
    事件类别: 无
    事件 ID: 1010年
    日期: 2002 年 28 3 日
    时间: 8:30:19 PM
    用户: 不适用
    计算机: Computername
    说明:
    自动注册对证书颁发机构 Certification Authority Name 的证书类型的域控制器出现故障。 (0x80090020) 出现内部错误。将试另一个证书颁发机构。
  • 在 Microsoft Internet 信息服务器版本 5.0,如果在执行某些证书操作 (例如对于您申请一个证书或您导入或导出的证书),您可能会收到以下错误消息之一:
    您要导入的私钥可能要求您的系统上未安装的加密服务提供程序。
    -或者-
    无法生成证书请求: 发生了内部错误。

原因

因为某些第三方程序可能不可用,没有指定一个提供程序的调用方的提供程序在 Windows 2000 上设置系统加密服务提供程序 (CSP),则可能会出现此问题。在某些情况下这可能导致问题,例如对于强的提供程序是否需要。受保护的存储服务调用 CryptAcquireContext,而不传递特定的提供程序。如果默认的 CSP 不支持指定的算法,可以使用下一个可用的 CSP。

这将显示与 Windows 2000 Service Pack 2 (SP2) 之前的 Windows 2000 版本上只测试过的程序有关。 Windows 2000 SP2 可以确保在系统运行高加密和可能使用不同的提供程序。Microsoft 测试表明此问题仅在一台基于 Windows 2000 SP2 的计算机或 windows 2000 以前版本的基于 SP2 的计算机上重现与安装的高加密包。

解决方案

若要解决此问题,获得最新的 service pack,对于 Windows 2000。有关更多的信息请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
260910如何获取最新的 Windows 2000 服务软件包

此修复程序的英文版应具有以下文件属性或更高版本:
   Date         Time   Version         Size       File name
   -----------------------------------------------------------
   10-Jan-2002  16:23  5.0.2195.4685     123,664  Adsldp.dll
   10-Jan-2002  16:23  5.0.2195.4762     130,320  Adsldpc.dll
   10-Jan-2002  16:23  5.0.2195.4016      62,736  Adsmsext.dll
   10-Jan-2002  16:23  5.0.2195.4797     356,112  Advapi32.001
   10-Jan-2002  16:23  5.0.2195.4797      41,744  Basesrv.dll
   10-Jan-2002  16:23  5.0.2195.4571      82,704  Cmnquery.001
   10-Jan-2002  16:23  5.131.2195.4558   466,704  Crypt32.001
   10-Jan-2002  16:23  5.0.2195.4368      77,584  Cryptsvc.dll
   10-Jan-2002  16:23  5.0.2195.4141     133,904  Dnsapi.dll
   10-Jan-2002  16:23  5.0.2195.4379      91,408  Dnsrslvr.dll
   10-Jan-2002  16:23  5.0.2195.4534      41,744  Dsfolder.001
   10-Jan-2002  16:23  5.0.2195.4534     156,944  Dsquery.001
   10-Jan-2002  16:23  5.0.2195.4574     110,352  Dsuiext.001
   10-Jan-2002  16:23  5.0.2195.4630     145,680  Kdcsvc.dll
   26-Nov-2001  16:33  5.0.2195.4680     199,440  Kerberos.dll
   10-Jan-2002  16:23  5.0.2195.4797     708,880  Kernel32.dll
   04-Sep-2001  08:32  5.0.2195.4276      71,024  Ksecdd.sys
   09-Jan-2002  10:50  5.0.2195.4814     503,568  Lsasrv.dll
   09-Jan-2002  10:50  5.0.2195.4814      33,552  Lsass.exe
   07-Dec-2001  16:05  5.0.2195.4745     107,280  Msv1_0.dll
   10-Jan-2002  16:23  5.0.2195.4594     306,960  Netapi32.dll
   10-Jan-2002  16:23  5.0.2195.4686     359,184  Netlogon.dll
   10-Jan-2002  16:23  5.0.2195.4797     476,432  Ntdll.dll
   10-Jan-2002  16:23  5.0.2195.4746     916,240  Ntdsa.dll
   02-Jan-2002  21:15  5.0.2195.4805   1,665,856  Ntoskrnl.exe
   10-Jan-2002  16:23  5.0.2195.4822     119,568  Psbase.001
   10-Jan-2002  16:23  5.0.2195.4748     388,368  Samsrv.dll
   10-Jan-2002  16:23  5.0.2195.4583     128,784  Scecli.dll
   10-Jan-2002  16:23  5.0.2195.4600     299,792  Scesrv.dll
   10-Jan-2002  16:23  5.0.2195.4600      48,400  W32time.dll
   06-Nov-2001  11:43  5.0.2195.4600      56,592  W32tm.exe
   10-Jan-2002  16:23  5.0.2195.4769     125,712  Wldap32.dll
   09-Jan-2002  10:50  5.0.2195.4814     503,568  Lsasrv.dll
   10-Jan-2002  16:33  5.0.2195.4797     708,880  Kernel32.dll
   10-Jan-2002  16:37  5.0.2195.4797     476,432  Ntdll.dll
				

替代方法

要变通解决此问题,请注意受保护存储现在显式调用所需的 CSP 用于未指定要使用的 CSP 的调用方。

状态

Microsoft 已经确认这是在本文开头列出的 Microsoft 产品中的问题。 Windows 2000 Service Pack 3 中,第一次已得到纠正此问题。

更多信息

有关如何获得 Windows 2000 数据中心服务器修补程序的其他信息请单击下面文章编号,以查看 Microsoft 知识库中相应的文章:
265173数据中心计划和 Windows 2000 数据中心服务器产品
有关如何在只重新启动一次的情况下安装多个修补程序的详细信息单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
296861如何通过只重新启动一次安装多个 Windows 更新或修补程序

属性

文章编号: 313494 - 最后修改: 2007年10月29日 - 修订: 3.10
这篇文章中的信息适用于:
  • Microsoft Windows 2000 Server SP1
  • Microsoft Windows 2000 Server SP2
  • Microsoft Windows 2000 Advanced Server SP1
  • Microsoft Windows 2000 Advanced Server SP2
  • Microsoft Windows 2000 Professional SP1
  • Microsoft Windows 2000 Professional SP2
  • Microsoft Internet Information Services 5.0
关键字:?
kbmt kbproductlink kbhotfixserver kbqfe kbwin2ksp4fix kbbug kbenv kberrmsg kbfix kbsecurity kbwin2000presp3fix kbwin2000sp3fix KB313494 KbMtzh
机器翻译
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。
点击这里察看该文章的英文版: 313494
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

提供反馈

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com