我需要使用 TDE 来保护数据并防止 DBA 看到数据。我们当前的数据访问层使用 LINQ 来访问没有 TDE 的 SQL。如果数据库转换为带有加密列的 TDE,我们必须让 LINQ 生成如下查询:
OPEN SYMMETRIC KEY MyKey
DECRYPTION BY PASSWORD = 'mypassword';
SELECT CONVERT(VARCHAR(MAX), DECRYPTBYKEY(MyEncryptedCol))
FROM dbo.MyEncryptedTable;
CLOSE SYMMETRIC KEY MyKey;
以最少的努力转换现有数据层的最佳方法是什么?我更喜欢继续使用 LINQ。
目前使用 SQL Server 2012、.Net 4.5、C#