透明数据加密Q&A

发布时间 2023-06-29 15:58:35作者: iyxqj
  1. 透明数据加密数据库加密流程。

    1. 打开Master数据库
      创建数据库主密钥(Database Master Key)
      创建数据库证书A(CERTIFICATE 包含证书公钥和私钥)
      备份证书(包括证书及私钥两个文件, 并牢记私钥密码)
    2. 打开待加密数据库比如HR
      使用数据库证书A创建数据库加密密钥 (生成 DEK, 该DEK将使用证书加密, 这是对称加密算法密钥)
      启用透明数据加密
  2. 在新数据库实例中恢复数据库备份。

    1. 打开Master数据库
      创建数据库主密钥(Database Master Key)
      使用备份的证书及私钥文件恢复数据库证书A
    2. 恢复数据库备份
  3. Master Key 做什么用, 是否需要备份
    Master Key是SQL Server 内部使用, SQL Server实例启动时会用到。可以不备份
    恢复数据库需要数据库备份文件, 证书文件,证书私钥文件,私钥加密密码。

  4. Master数据库会被加密吗,如果IT把Master数据库复制出去是否导致私钥泄露。
    Master数据库无法被复制出去。

  5. 数据库文件是使用对称加密的, 对称加密的密钥存在什么地方?
    DEK通过证书加密后, 保存在数据库的引导区中,也会保存在数据库备份中

  6. 加密框架如何?

参考:
https://learn.microsoft.com/zh-cn/sql/relational-databases/security/encryption/move-a-tde-protected-database-to-another-sql-server?view=sql-server-ver16