Шифрование настроек приложения в web.config

Я разрабатываю веб-приложение, которое требует, чтобы имя пользователя и пароль хранились в web.Config, это также относится к некоторым URL-адресам, которые будут запрашиваться самим веб-приложением, а не клиентом.

Я знаю, что инфраструктура .Net не позволит использовать файл web.config, однако я по-прежнему считаю, что его плохая практика оставляет эту информацию в виде простого текста.

Все, что я прочитал до сих пор, требует от меня использования командной строки или сохранения значений в реестре сервера. У меня есть доступ к ни одному из них, поскольку хост подключен к сети, и у меня есть только доступ к FTP и панели управления (рулем).

Может ли кто-нибудь рекомендовать какие-либо хорошие, бесплатные библиотеки DLL или методы шифрования, которые я могу использовать? Я бы предпочел не развивать свою собственную!

Спасибо за отзывы до сих пор ребята, но я не могу выдавать команды и не могу редактировать реестр. Его придется использовать для шифрования util / helper, но просто интересно, какой из них!

  • Шифрование и расшифровка разделов конфигурации (ASP.NET) в MSDN
  • Шифрование значений Web.Config в ASP.NET 2.0 на блоге ScottGu
  • Шифрование разделов пользовательской конфигурации в блоге К. Скотта Аллена

РЕДАКТИРОВАТЬ:
Если вы не можете использовать утилиту asp, вы можете зашифровать файл конфигурации с помощью метода SectionInformation.ProtectSection .

Образец в кодепроекте:

Шифрование строк подключения внутри Web.config в ASP.Net 2.0

Использовать aspnet_setreg.exe http://support.microsoft.com/kb/329290

Хотя на первый взгляд это кажется простым, есть пара препятствий, с которыми я столкнулся.

Поэтому я предоставляю шаги, которые отлично подходят для меня (чтобы зашифровать раздел appSettings ) с использованием криптовального провайдера по умолчанию:

Шифрование разделов в файле web.config:

  1. Откройте панель команд администратора (запустите ее как администратор! ). Командная строка будет на C: что предполагается для следующих шагов.
  2. cd C:\Windows\Microsoft.NET\Framework64\v4.0.30319 , в 32-разрядных системах Windows вместо Framework64 используется Framework64
  3. изменить на D:
  4. cd D:\Apps\myApp
  5. c:aspnet_regiis -pef appConfig .

Вы должны увидеть это сообщение:

Microsoft (R) ASP.NET RegIIS версия 4.0.30319.0 Утилита администрирования для установки и удаления ASP.NET на локальном компьютере. Авторское право (C) Корпорация Microsoft. Все права защищены. Шифрование раздела конфигурации … Преуспеть!

Вы также можете расшифровывать разделы в файле web.config: это те же шаги, но с опцией -pdf вместо -pef для aspnet_regiis.

  • Шифрование / Расшифровка больших файлов (.NET)
  • Почему при использовании функции Non-Random IV с режимом CBC существует уязвимость?
  • Безопасность сообщений WCF без сертификата и windows auth
  • Как безопасно хранить ключи шифрования в java?
  • Лучший способ создать ключи AES, чем посев SecureRandom
  • Давайте будем гением компьютера.