备份和还原 SQL Server Reporting Services (SSRS) 加密密钥

适用于: SQL Server 2016 (13.x) 及更高版本 Reporting Services 本机模式 Reporting Services SharePoint 模式

了解如何使用 Report Server Configuration Manager 和 rskeymgmt 实用工具备份和还原 SSRS 加密密钥。 可备份这些密钥以维护加密数据的安全性和可恢复性。 当更改服务帐户凭据、迁移安装或从硬件故障中恢复时,此过程至关重要。 使用此过程来确保报表服务器环境的完整性和可用性。

注意

自 SQL Server 2016 之后,不再提供 Reporting Services 与 SharePoint 的集成这一功能。

在以下情况下还原加密密钥的备份副本:

  • 更改 Report Server Windows 服务帐户名或重置密码。 使用 Report Server Configuration Manager,对密钥进行备份是服务帐户名称更改操作的一部分。

    注意

    重置密码与更改密码不同。 密码重置需要相应的权限以覆盖域控制器上的帐户信息。 当你忘记或不知道特定密码时,系统管理员会重置密码。 只有密码重置才需要还原对称密钥。 定期更改帐户密码不需要重置对称密钥。

  • 重命名承载报表服务器的计算机或实例。 报表服务器实例基于 SQL Server 实例名称。
  • 迁移报表服务器安装或配置报表服务器以使用其他 Report Server 数据库。
  • 由于硬件故障而恢复报表服务器安装。

备份 SharePoint 模式报表服务器

对于 SharePoint 模式报表服务器,可以使用 PowerShell 命令或使用 Reporting Services 服务应用程序的管理页。 有关详细信息,请参阅管理 Reporting Services SharePoint 服务应用程序的“密钥管理”部分。

先决条件

  • SQL Server 2016 (13.x) 或更高版本。
  • 与报表服务器数据库的连接。
  • 对 Report Server Configuration Manager 或 rskeymgmt 实用工具的访问。
  • 备份文件的安全存储位置。

备份加密密钥

只需要备份对称密钥的一个副本。 报表服务器数据库和对称密钥之间存在一对一关系。 只需要备份一个副本,但如果在扩展部署模型中运行多个报表服务器,则可能需要多次还原密钥。 每个报表服务器实例都需要具有自己的对称密钥副本,才能对报表服务器数据库中的数据进行锁定和解锁。

备份对称密钥是将密钥写入所指定的文件,然后使用所提供的密码对密钥进行加密的过程。 对称密钥不在未加密状态下存储,所以在将它保存到磁盘时,必须提供密码对密钥进行加密。 创建文件后,必须将其存储在安全的位置并记住用于解锁文件的密码

使用 Report Server Configuration Manager 备份加密密钥(本机模式)

  1. 启动 Report Server Configuration Manager,然后连接到要配置的报表服务器实例。
  2. 选择“加密密钥”,然后选择“备份”。
  3. 指定用来包含所存储密钥的文件。 Reporting Services 将向该文件追加 .snk 文件扩展名。 请考虑将文件存储在独立于报表服务器的磁盘上。
  4. 输入强密码。
  5. 选择“确定”

使用 rskeymgmt 实用工具备份加密密钥(本机模式)

  • 在承载报表服务器的计算机上本地运行 rskeymgmt.exe 。 使用 -e 提取参数复制密钥,提供文件名并指定密码。 以下示例说明了所需的参数:

    rskeymgmt -e -f d:\rsdbkey.snk -p<password>  
    

还原加密密钥

还原对称密钥时,将按如下方式替换报表服务器数据库中的现有密钥:

  • 从受密码保护的备份文件中检索对称密钥。
  • 使用 Report Server Windows 服务公钥加密对称密钥。
  • 将新加密的对称密钥存储到报表服务器数据库中。
  • 将删除以前的对称密钥数据。

若要还原加密密钥,必须具有加密密钥备份以及用于保护它的密码。 如果具有密钥和密码,则可以运行 Reporting Services Configuration Manager 或 rskeymgmt 实用工具来还原密钥。 请记住:

  • 对称密钥必须与当前用于锁定和解锁报表服务器数据库中的加密数据的密钥匹配。
  • 如果还原的密钥有效,则报表服务器无法访问加密数据。
  • 如果无法还原密钥,则可能需要删除所有加密值。
  • 如果没有备份副本,则必须删除现有密钥和加密内容。 有关详细信息,请参阅删除和重新创建加密密钥 (Report Server Configuration Manager)

有关如何创建对称密钥的详细信息,请参阅初始化报表服务器(报表服务器配置管理器)

使用 Report Server Configuration Manager 还原加密密钥(本机模式)

  1. 启动 Report Server Configuration Manager,然后连接到要配置的报表服务器实例。
  2. 选择“加密密钥”,然后选择“还原”。
  3. 选择包含加密密钥备份副本的 .snk 文件。
  4. 输入用于解锁该文件的密码。
  5. 选择“确定”

使用 rskeymgmt 实用工具还原加密密钥(本机模式)

  • 在承载报表服务器的计算机上本地运行 rskeymgmt.exe 。 使用 -a 参数还原密钥。 提供一个完全限定的文件名并指定密码。 下面的示例演示必须指定的参数:

    rskeymgmt -a -f d:\rsdbkey.snk -p<password>