【发布时间】:2014-01-23 01:59:44
【问题描述】:
我需要加密我的 MS SQL 数据库中的一些列(名称、ssn ...),并且我一直在研究列加密,如一些站点所述,例如: Encrypting Column Level Data in SQL Server 和 Introduction to SQL Server Encryption and Symmetric Key Encryption Tutorial.
我已经能够在插入时使用触发器来加密列,并且可以在 SQL Studio 中使用以下方法解密该列:
OPEN SYMMETRIC KEY TestTableKey
DECRYPTION BY PASSWORD = 'Pa$$w0rd'
CONVERT(VARCHAR(50),DECRYPTBYKEY(EncryptSecondCol)) AS DecryptSecondCol
FROM TestTable
但是如何从我的应用程序访问数据?我仍然希望能够搜索名称。我唯一能想到的是使用存储过程并将解密密码作为参数发送到 LINQ 语句中,这样存储过程就可以解密数据然后执行查询。
我走对了吗?
我是新手,所以我欢迎其他有用的建议。
【问题讨论】:
标签: c# sql sql-server linq encryption