在 MS SQL Server 中恢复数据
在发生灾难或数据丢失时,将备份数据恢复到 PAM360 数据库对于确保业务连续性至关重要。PAM360 提供了专门的脚本和指南,用于安全地恢复数据。该恢复过程可确保所有加密数据被检索并重新加载到 PAM360 数据库中,从而帮助组织快速恢复正常运营。
本文档概述了为 PAM360 恢复 MS SQL Server 数据库数据的分步操作流程。
最佳实践
PAM360 利用 MS SQL Server 的加密机制来保护其数据。加密主密钥存储在<PAM360-安装目录>/conf文件夹中,文件名为masterkey.key。为了增强安全性,建议在安装 MS SQL 时将此密钥移至安全位置,并在执行灾难恢复时使用它。
数据恢复流程
- 安装 使用 MS SQL Server 作为后端数据库。该新实例将用于恢复备份。请确保 MS SQL Server 实例已配置 SSL。请参阅 第 3 节 中的内容。
- 从原始 SQL Server 复制 PAM360 备份文件。 默认情况下,备份文件位于<MSSQL-安装目录>/Backup文件夹中,并遵循以下命名格式: pam360backup_pam360版本号_备份日期-时间.bak(例如:pam360backup_4500_110721-1159.bak)。点击 此处 了解有关备份 PAM360 数据的更多信息。从 MS SQL 数据库中创建的备份将作为.bak文件存储在运行 SQL Server 的主机上。
- 在将要还原备份的机器(另一个 SQL Server 实例)上,启动 Microsoft SQL Server Management Studio 并连接到 数据库引擎。
- 右键单击“数据库”,然后从菜单中选择“还原数据库”。
- 在“还原数据库”窗口中,在“源”下选择“设备”,然后单击[...]按钮浏览并选择 PAM360 备份文件。
- 在“选择备份设备”弹出 窗口中,将“备份介质”类型设为“文件”,然后单击“添加”。
- 在“定位备份文件”窗口中,选择 PAM360 备份文件,然后单击“确定”。
- 在“还原数据库”窗口中,于“目标”下的“数据库”字段中指定目标数据库。在“待还原的备份集”下,选择相应的“还原”列 ,然后单击“确定”。完成后,状态窗口将确认还原成功。
- 现在,恢复主密钥。默认情况下,加密主密钥存储在<PAM360-安装目录>/conf目录中,文件名为masterkey.key。如果该文件已被移动到安全位置,请将其找回,并从masterkey.key文件中复制密码。
- 连接到已还原备份的 SQL Server。打开 Microsoft SQL Server Management Studio,连接到数据库引擎,并执行以下查询以解密数据。执行这些查询将解密数据库中的数据。
例如:
use <已还原数据库的名称>;
OPEN MASTER KEY DECRYPTION BY PASSWORD = ' master_key_password';
alter master key regenerate with encryption by password = 'master_key_password';
use passtrix;
OPEN MASTER KEY DECRYPTION BY PASSWORD = 'secret';
alter master key regenerate with encryption by password = 'secret'; - 导航至<PAM360-安装目录>/conf文件夹,并编辑manage_key.conf文件以指定pam360_key.key的位置(加密主密钥) 的位置。PAM360 在启动时需要能够访问此密钥。一旦服务器成功启动,该密钥文件便不再需要,存储密钥的设备可以离线。
注意
从 PAM360 版本 8000 开始,为确保系统平稳运行,必须将pam360_key.key文件保留在manage_key.conf文件中指定的路径下。PAM360 会持续访问该文件以确保系统不间断运行。如果指定路径下找不到pam360_key.key文件,服务可能无法启动,或者某些功能(如数据库备份)将无法正常工作。
注意
- 请使用 PAM360 连接数据库时所用的同一账户执行数据库恢复。若使用其他账户进行恢复,请执行以下额外查询,为 PAM360 账户授予读取主密钥所需的权限:
GRANT VIEW DEFINITION ON CERTIFICATE::PMP_CERT TO [user]
GRANT VIEW DEFINITION ON SYMMETRIC KEY::PMP_SYM_KEY TO [user]
此处,[user] 指 PAM360 用于连接 SQL 数据库的账户。您可以在 <PAM360-安装目录>/conf/database_params.conf文件中的 JDBC URL 中找到该账户的名称,除非该账户使用 Windows 身份验证。授予 [user] 对 CERTIFICATE::PMP_CERT 的控制权限
- 请使用以下查询验证 CERTIFICATE 和 SYMMETRIC KEY 的正确名称:
select * from sys.certificates
select * from sys.symmetric_keys
- 请使用 PAM360 连接数据库时所用的同一账户执行数据库恢复。若使用其他账户进行恢复,请执行以下额外查询,为 PAM360 账户授予读取主密钥所需的权限:
通过遵循以下步骤,您可以从 MS SQL Server 备份中恢复 PAM360 数据,并确保业务连续性。