在测试数据库中使用SQL加密,无法删除主密钥,因为它加密了“测试”证书

时间:2016-05-09 20:02:44

标签: sql sql-server encryption sql-server-2012

所以我不确定我是否理解这个问题有多严重,但是我在测试数据库中搞乱加密练习。我正计划在数据上实现TDE,但我尝试在SQL 2012管理器界面上制作一个Master Key并提前制作证书,并且我认为我可以删除主密钥......但我不能。它说它有一个由主密钥加密的“testcertificate”,这是我在练习期间做的。

我没有主密钥或证书的密码。这是否意味着我完全搞砸了?专栏和测试证书毫无意义。其他一切都运行良好,但我无法制作新的万能钥匙...应该这样做,因为这次我复制粘贴了密码。

2 个答案:

答案 0 :(得分:1)

如果您使用密码加密,则只需使用新密码生成新的主密钥,如下所示:

USE master
GO
ALTER MASTER KEY REGENERATE WITH ENCRYPTION BY PASSWORD = 'Password1234';
GO

使用旧主密钥的任何证书都将自动继承新的主密钥,因为只能有一个。

答案 1 :(得分:1)

由于您不关心保留任何证书,您可以放弃它们;密码不是必需的。根据您的上述内容,我将尝试以下方法:

drop certificate [testcertificate];
drop master key;