Что лучше всего подходит для защиты/шифрования строк подключения в ASP.NET, а не просто для хранения в виде обычного текста в Web.Config
Шифрование/защита строки подключения ASP.NET
- возможный дубликат программного шифрования файла конфигурации в .NET 01.08.2014
Ответы:
Взгляните на Программное шифрование файла конфигурации в .NET, кажется, покрывает эту землю.
Вы можете установить этот раздел как зашифровано.
Однако это шифрование по умолчанию имеет подводные камни, на которые указывают другие. Вы также можете настроить раздел строк подключения так, чтобы он указывал на внешний файл, и этот внешний файл будет работать вместе с шифрованием. Это должно решить большинство проблем, потому что системный администратор может настроить там шифрование, не нарушая ничего другого в файле web.config разработчика, а разработчик может вносить изменения в конфигурацию, не отменяя шифрование системного администратора.
Web.Config имеет встроенную поддержку шифрования строк подключения (и других данных), но это требует некоторых дополнительных затрат, поскольку шифрование привязано к серверу, поэтому шифрование должно быть настроено администратором сервера, а не разработчиком.
вы также можете зашифровать вручную, используя процедуру шифрования в вашем источнике.
Зачем ты шифруешься? От кого ты защищаешься? Хакеры получают доступ к веб-конфигурации? Разработчики, которые не должны знать строку подключения prod? Причины шифрования несколько изменят решение.
Лучшей практикой является использование проверки подлинности Windows (с оговоркой о пуле соединений).
В противном случае хорошей практикой является шифрование строк подключения: Сохранение секретов в ASP.NET 2.0.
Примечание: базовый подход не работает с веб-фермами.