Мне нужно было зашифровать/дешифровать некоторую личную информацию в моей базе данных, такую как номер кредитной карты и пароли.Сертификат SQL Server и симметричный ключ
Следуя шагам от Microsoft, я успешно шифровал & расшифровать данные.
Но после некоторого теста у меня есть вопросы.
Предположим, что кто-то получает несанкционированный доступ к базе данных (взломать) и может видеть базу данных в SSMS со своего компьютера. Уверенно он видит, что у меня есть сертификат и симметричная настройка ключа.
Для того, чтобы отобразить данные примеры показывает следующий запрос
OPEN symmetric KEY symmetrickey1
decryption BY certificate certificate1
Now list the original ID, the encrypted ID
SELECT customer_id,
credit_card_number_encrypt AS
'Encrypted Credit Card Number',
CONVERT(VARCHAR, Decryptbykey(credit_card_number_encrypt)) AS
'Decrypted Credit Card Number'
FROM dbo.customer_data;
-- Close the symmetric key
CLOSE symmetric KEY symmetrickey1;
Если приведенный выше запрос возвращает данные и можно увидеть, как кредитные карты, то можно защитить? Не нужно ли передавать пароль где-нибудь в запросе?
Уверен, что я что-то пропустил. Кто-нибудь может мне это объяснить?
жаль, что я говорил для SQL Express – user2160275