当您更改用于运行报表服务器服务的用户帐户后,重新启动报表服务器服务时,报表服务跟踪日志中收到错误消息

注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。

点击这里察看该文章的英文版: 842421
本文已归档。它按“原样”提供,并且不再更新。
症状
在运行 Microsoft SQL Server 2000 报表服务的计算机上如果您更改该用户帐户,您用来运行该报表服务器服务,然后您重新启动报表服务器服务,您可能会注意到与以下内容类似的行为:
  • 如果更改了用于运行报表服务器的 Windows 服务的用户帐户,您可能会收到类似于以下报表服务跟踪日志中的错误消息:
    ReportingServicesService!crypto!d00!5/18/2004-13:10:54:: i INFO: Initializing  crypto as user: DomainName\UserNameReportingServicesService!crypto!d00!5/18/2004-13:10:54:: i INFO: Exporting  public keyReportingServicesService!crypto!d00!5/18/2004-13:10:55:: i INFO: Performing  sku validationReportingServicesService!crypto!d00!5/18/2004-13:10:55:: i INFO: Importing  existing encryption keyReportingServicesService!library!d00!5/18/2004-13:10:55:: e ERROR: Throwing  Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerDisabledException:  The report server cannot decrypt the symmetric key used to access sensitive or  encrypted data in a report server database. You must either restore a backup key  or delete all encrypted content and then restart the service. Check the  documentation for more information., ; Info: Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerDisabledException:  The report server cannot decrypt the symmetric key used to access sensitive or  encrypted data in a report server database. You must either restore a backup  key or delete all encrypted content and then restart the service. Check the  documentation for more information. ---> System.Runtime.InteropServices.COMException (0x80090005): Bad Data. at System.Runtime.InteropServices.Marshal.ThrowExceptionForHR(Int32 errorCode,   IntPtr errorInfo) at RSManagedCrypto.RSCrypto.ImportSymmetricKey(Byte[] pSymKeyBlob) at Microsoft.ReportingServices.Library.ConnectionManager.GetEncryptionKey() --- End of inner exception stack trace ---ReportingServicesService!library!d00!5/18/2004-13:10:55:: Exception caught  while starting service. Error:  Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerDisabledException:  The report server cannot decrypt the symmetric key used to access sensitive or  encrypted data in a report server database. You must either restore a backup   key or delete all encrypted content and then restart the service. Check the  documentation for more information. ---> System.Runtime.InteropServices.COMException (0x80090005): Bad Data. at System.Runtime.InteropServices.Marshal.ThrowExceptionForHR(Int32 errorCode,   IntPtr errorInfo) at RSManagedCrypto.RSCrypto.ImportSymmetricKey(Byte[] pSymKeyBlob) at Microsoft.ReportingServices.Library.ConnectionManager.GetEncryptionKey() --- End of inner exception stack trace --- at Microsoft.ReportingServices.Library.ConnectionManager.GetEncryptionKey() at Microsoft.ReportingServices.Library.ConnectionManager.ConnectStorage() at Microsoft.ReportingServices.Library.ConnectionManager.VerifyConnection() at Microsoft.ReportingServices.Library.ServiceController.ServiceStartThread()ReportingServicesService!library!d00!5/18/2004-13:10:55:: Attempting to start service again...
    注意默认状态下,报表服务器的 Windows 服务跟踪日志记录在 InstallationDrive: \Program Files\Microsoft SQL Server\ InstanceOfSQLServer \Reporting Services\LogFiles\ReportServerService_ TimeStamp.log 文件。
  • 如果更改了用于运行报表服务器 Web 服务的用户帐户,您可能会收到类似于以下报表服务跟踪日志中的错误消息:
    aspnet_wp!crypto!c84!5/21/2004-05:26:15:: i INFO: Initializing crypto as  user: UserNameaspnet_wp!crypto!c84!5/21/2004-05:26:15:: i INFO: Exporting public keyaspnet_wp!crypto!c84!5/21/2004-05:26:15:: i INFO: Performing sku validationaspnet_wp!crypto!c84!5/21/2004-05:26:15:: i INFO: Importing existing encryption  keyaspnet_wp!library!c84!5/21/2004-05:26:15:: e ERROR:  Throwing Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerDisabledException:  The report server cannot decrypt the symmetric key used to access sensitive  or encrypted data in a report server database. You must either restore a  backup key or delete all encrypted content and then restart the service.  Check the documentation for more information., ;Info: Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerDisabledException:  The report server cannot decrypt the symmetric key used to access sensitive or  encrypted data in a report server database. You must either restore a backup  key or delete all encrypted content and then restart the service. Check the  documentation for more information. --->  System.Runtime.InteropServices.COMException (0x80090005): Bad Data.at System.Runtime.InteropServices.Marshal.ThrowExceptionForHR(Int32 errorCode,  IntPtr errorInfo)at RSManagedCrypto.RSCrypto.ImportSymmetricKey(Byte[] pSymKeyBlob)at Microsoft.ReportingServices.Library.ConnectionManager.GetEncryptionKey()   --- End of inner exception stack trace ---aspnet_wp!webserver!72c!5/21/2004-05:26:25:: i INFO: Reporting Web Server  stopped
    注意默认状态下,报表服务器 Web 服务跟踪日志记录在 InstallationDrive: \Program Files\Microsoft SQL Server\ InstanceOfSQLServer \Reporting Services\LogFiles\ReportServer_ TimeStamp.log 文件。

    此外,启动报表管理器时, 您可能会收到与以下类似的错误消息:

    在报表服务器无法解密对称密钥用来访问报表服务器数据库中的敏感或加密数据。您必须还原备份密钥或删除所有加密的内容,然后重新启动服务。请查阅该文档的详细信息。(rsReportServerDisabled)获取联机帮助
    不正确的数据。
原因
报表服务器服务使用对称密钥来访问报表服务器数据库中加密的数据。通过使用非对称的公用密钥对应于计算机和用户帐户,用于运行报表服务器服务,此对称密钥被加密。当您更改用户帐户,用于运行报表服务器服务时,该报表服务器不能使用非对称的公钥解密对称密钥。因此,报表服务器服务无法使用从报表服务器数据库访问数据的对称密钥。
解决方案
若要解决此问题,您必须备份加密密钥之前更改用户帐户,用于运行报表服务器的 Windows 服务或报表服务器 Web 服务,然后您必须将应用已备份的密钥。为此,请在运行报告服务的计算机上,请按照下列步骤操作:
  1. 使用该服务已成功运行的该用户帐户启动报表服务器的 Windows 服务和报表服务器 Web 服务。
  2. 若要备份加密密钥使用 rskeymgmt 命令行实用程序。为此请在命令提示符处运行以下命令:
    RSKeyMgmt-e-f FileName-p StrongPassword
    注意: 替换 FileName 和 $ StrongPassword 具有一个相应的文件的名称和适当的密码。默认状态下,rskeymgmt 命令行实用程序位于 InstallationDrive: \Program Files\Microsoft SQL Server\80\Tools\Binn 文件夹。

    有关 rskeymgmt 命令行实用程序的详细信息,请在命令提示符处运行以下命令:
    RSKeyMgmt / 吗?
  3. 若要删除现有的密钥对引用使用 rskeymgmt 命令行实用程序。为此请在命令提示符处运行以下命令:
    RSKeyMgmt-r InstallationID
    注意替换 InstallationIDInstallationID 设置 RSReportServer.config 文件中提供的安装 ID。默认状态下,RSReportServer.config 文件存储在 InstallationDrive: \Program Files\Microsoft SQL Server\MSSQL\Reporting Services\ReportServer 文件夹。
  4. 停止 Microsoft Internet Information Services (IIS)。
  5. 停止报告服务器 Windows 服务。
  6. 更改用于运行报表服务器的 Windows 服务或报表服务器 Web 服务到所需的用户帐户的用户帐户。
  7. 启动 IIS。
  8. 启动报表服务器的 Windows 服务。
  9. 若要应用在第 2 步中已备份加密密钥使用 rskeymgmt 命令行实用程序。为此请在命令提示符处运行以下命令:
    RSKeyMgmt-a-f FileName-p StrongPassword
    注意替换为 FileNameStrongPassword 文件的名称和用于在第 1 步中将对称加密密钥备份的密码。
状态
Microsoft 已经确认这是在"适用于"一节中列出的 Microsoft 产品中的问题。
在下的安全上下文
参考
有关报告服务跟踪日志的详细信息,请访问下面的 Microsoft 开发人员网络 (MSDN) 的网站:有关 RSReportServer.config 配置文件的详细信息,请访问下面的 Microsoft 网站:

警告:本文已自动翻译

属性

文章 ID:842421 - 上次审阅时间:12/08/2015 07:21:47 - 修订版本: 1.3

Microsoft SQL Server 2000 Reporting Services

  • kbnosurvey kbarchive kbmt kbtshoot kbconfig kbservice kbreport kbmsg kbuser kbsettings kblogin kberrmsg kbprb KB842421 KbMtzh
反馈