我刚刚创建了一个用对称密钥保护的数据库。
问题是,如何从在.net 3.5和SQL Server 2008中创建的独立C#应用程序中安全地访问数据库(因为sql数据库是应用程序的一部分)
将密钥放在.exe文件中是一种不安全的方式来访问数据,还是我错过了什么?
请提供具体指南,因为我(几乎)是sql的新手。 感谢。
更新:我的意思是,我已经加密了包含敏感数据的表格列,以避免滥用数据。
我想编写一个c#代码,它会自动解密,对数据列执行读取或写入操作并再次加密。
问题是,如果我在代码中编写直接密码,整个实现将毫无用处。
答案 0 :(得分:1)
我刚创建了一个用对称密钥保护的数据库
你究竟做了什么?没有你描述的这样的东西。您可能已经创建了一个对称密钥,但这与“保护”数据库完全不同。
如何使用安全连接访问数据库
使用SSL。有关分步说明,请参阅Encrypting Connections to SQL Server。
如果您需要有关SQL Server安全性和/或加密的更具体的答案,您需要描述您想要实现的目标。你想要保护什么,以及针对具体的威胁。您还应该查看Encryption Hierachy。但是,作为一般规则,人们永远不能在应用程序中嵌入秘密。通过密码派生的密钥层次加密的数据由询问用户密码解密。