0

我有两个数据库。我从一个表中复制了所有数据并插入到另一个数据库表中。我已经在第二个数据库上创建了对称密钥,但是当我尝试按如下方式运行查询时

 OPEN SYMMETRIC KEY SecureSymmetricKey DECRYPTION BY PASSWORD = N'StrongPassword';        
 select DecryptByKey(columname) as DocSSN from tablename
 CLOSE SYMMETRIC KEY SecureSymmetricKey; 

但总是返回空值。

4

1 回答 1

0

您需要按照在两台服务器上创建相同的对称密钥中描述的步骤进行操作。您必须使用新创建的对称密钥重新加密两个服务器/数据库上的所有数据,该对称密钥使用给定的已知密钥材料。事后创建密钥副本是不可能的。

在服务器/数据库之间共享对称密钥是一种非常糟糕的做法。您应该在每个数据库上使用不同的密钥进行加密。

于 2013-04-02T07:11:55.080 回答