【问题标题】:SQL Server 2012 after mirroring failover, decryption of an encrypted table column no longer decryptable [closed]镜像故障转移后的 SQL Server 2012,加密表列的解密不再可解密 [关闭]
【发布时间】:2014-06-25 08:07:33
【问题描述】:

我想知道是否有人可以帮助我?

我们有sql server 2012标准版。

在其中一个数据库(全部镜像)中,我们有一个带有加密列的表。

此表的解密工作正常,直到镜像故障转移后,加密表列的解密不再可解密?

我对此进行了研究,建议的解决方案似乎是实施透明数据加密?

我遇到了

http://blogs.msdn.com/b/sqlserverfaq/archive/2009/03/31/setting-up-database-mirroring-in-sql-server-2008-using-t-sql-when-the-database-is-encrypted-using-transparent-data-encryption.aspx

但是 2012 标准版不允许 TDE。

有谁知道除了 TDE 之外是否还有其他方法可以解决此问题,因为我对镜像不是很有经验。

当前原则设置为:-

IF NOT EXISTS 
    (SELECT * FROM sys.symmetric_keys WHERE symmetric_key_id = 101)
    CREATE MASTER KEY ENCRYPTION BY 
    PASSWORD = 'complex password'
GO

CREATE CERTIFICATE Data01
   WITH SUBJECT = 'Data01 Passwords';
GO

CREATE SYMMETRIC KEY SSN_Key_01
    WITH ALGORITHM = AES_256
    ENCRYPTION BY CERTIFICATE Data01;
GO

非常感谢任何建议。

【问题讨论】:

  • 这个问题似乎跑题了,因为它是关于 DBA 的。

标签: sql-server-2012 certificate database-mirroring


【解决方案1】:

此表的解密工作正常,直到镜像故障转移后,加密表列的解密不再可解密?

如果我们有确切的错误信息那就太好了,所以这只是我的一个有根据的猜测。您可能正在使用服务主密钥自动解密数据库主密钥,继续进一步直到最终密钥被解密并打开。由于默认情况下,每个实例上的 SMK 都是唯一的(除非另有强制规定),因此 SMK 将不同并且无法在镜像实例上打开 DMK。

TDE 用于加密静态数据,它不会像单元级加密那样阻止具有读取访问权限的用户获取数据。

要解决此问题,假设我的猜测是正确的,您需要更改解密访问权限以删除 SMK 的自动解密,手动打开 DMK 并照常继续,或者更新 SMK 以在两台服务器上匹配。

【讨论】:

  • 感谢肖恩的努力。抱歉耽搁了,但我只是兼职,所以今天才看到你的回复。我采取了更新两个 SMK 以在两台服务器上匹配的方法,现在它工作正常,尤其是在镜像故障转移时。再次感谢
猜你喜欢
  • 2011-01-10
  • 2014-07-17
  • 1970-01-01
  • 2021-11-23
  • 2013-12-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-06-05
相关资源
最近更新 更多