У меня есть таблица TblUserLogin
с колонками LoginID int
, Password varchar(50)
, LoginUserName varchar(150)
, Designation varchar(100)
.Шифрование столбца в SQL Server
Мое требование состоит в том, что всякий раз, когда мы используем оператор select
в этой таблице, мы можем видеть введенный пароль (который является конфиденциальной информацией).
Есть ли способ, чтобы мы могли шифровать столбец пароля, чтобы когда-либо мы использовали оператор select
, что информация будет видна зашифрованным способом и не повлияет на код, который обращается к столбцу паролей или вставляет новый пароль?
Простыми словами, когда «столбец пароля отображается как зашифрованный, когда он доступен из Management Studio с использованием инструкции select
, но при обращении к программному обеспечению он возвращает фактический незашифрованный пароль».
1) Вы можете использовать вид и правые права. 2) Хеш-пароль лучше всего вписать его. – danihp
У вас не может быть и того, и другого - вы все время зашифровываете пароль заново, или получаете его обратно в виде обычного текста (дешифрованного) все время - вы не можете его вернуть после зашифрования, как только clear-text. Самый простой способ - просто зашифровать его в своем приложении, используя хороший шифр, а затем сохранить его в SQL Server. Тогда SQL Server всегда будет показывать зашифрованную версию, в то время как ваше приложение может проверять пароли, введенные пользователями в зашифрованном виде. –