您对SQL Server的对称密钥功能有何看法?具体来说,我有两个问题:
哪一组功能更好...... EncryptByKey或EncryptByPassPhrase?
这两个函数都需要某种密码。在典型的Web应用程序架构中,应该在何处存储此密码? (即,在数据库中的存储过程中进行硬编码,或作为Web应用程序中的配置设置存储)
我很想知道这些功能的最佳实践。
答案 0 :(得分:4)
使用密码短语加密比较容易,但使用密钥的优点是可以使用内置的SQL服务器角色来保护密钥。您可以将密钥的使用锁定为仅需要访问该数据的用户。
如果您使用证书,则在初始设置期间只需要纯文本,并且可以将其存储在系统外部。同样,证书是一个安全的对象,可以锁定。
希望这有帮助。