Шифрование Web.Config

Дубликат шифрования файлов конфигурации для развертывания файлов конфигурации .NET и Encrypting для развертывания


Каков наилучший подход и инструменты для шифрования информации в файле web.config?

Я считаю, что есть два способа сделать это:

используя aspnet_regiis, используя DPAPI или RSA , или делая это программно .

Программный способ может быть удобным, особенно если вы также хотите шифровать app.config.

Из моего опыта использования этого, если вы пишете настраиваемый раздел конфигурации, вы устанавливаете DLL, содержащую classы для этого раздела, в GAC. Для проекта, в котором я работал, я в основном написал следующий подход:

  • Скопируйте конфигурацию DLL в GAC.
  • Выполните шифрование.
  • Удалите конфигурационную DLL из GAC.

Скорее всего, если вы просто шифруете строки подключения, это не будет проблемой. Вы также должны помнить, хотите ли вы шифровать на машинной основе или на определенную учетную запись пользователя – оба варианта могут быть полезны в зависимости от вашего сценария. Для простоты я придерживался широкого шифрования. Ссылки, которые я привел, объясняют достоинства обоих подходов.

Вот команды для шифрования файла web.config без программирования …

Для шифрования

aspnet_regiis -pef "Section" "Path exluding web.config" 

Для расшифровки

 aspnet_regiis -pdf "Section" "Path exluding web.config" 

Из этих команд вы можете зашифровать или дешифровать весь раздел.

Используйте инструмент aspnet_regiis в каталоге framework:

  -- CONFIGURATION ENCRYPTION OPTIONS -- pe section Encrypt the configuration section. Optional arguments: [-prov provider] Use this provider to encrypt. [-app virtual-path] Encrypt at this virtual path. Virtual path must begin with a forward slash. If it is '/', then it refers to the root of the site. If -app is not specified, the root web.config will be encrypted. [-site site-name-or-ID] The site of the virtual path specified in -app. If not specified, the default web site will be used. [-location sub-path] Location sub path. [-pkm] Encrypt/decrypt the machine.config instead of web.config. pd section Decrypt the configuration section. Optional arguments: [-app virtual-path] Decrypt at this virtual path. Virtual path must begin with a forward slash. If it is '/', then it refers to the root of the site. If -app is not specified, the root web.config will be decrypted. [-site site-name-or-ID] The site of the virtual path specified in -app. If not specified, the default web site will be used. [-location sub-path] Location sub path. [-pkm] Encrypt/decrypt the machine.config instead of web.config. 

Вы должны начать здесь, легко следовать, хорошо объясненный пошаговое руководство в MSDN: Как: Шифровать разделы конфигурации в ASP.NET 2.0 Использование DPAPI

Используйте инструмент командной строки aspnet_regiis.exe

Вы также можете шифровать и расшифровывать разделы в файле Web.config с помощью инструмента командной строки aspnet_regiis.exe, который можно найти в каталоге% WINDOWSDIR% \ Microsoft.Net \ Framework \ version.

Смотрите здесь: http://aspnet.4guysfromrolla.com/articles/021506-1.aspx .

  • Как заставить HTTPS использовать файл web.config
  • Использование другого Web.config в среде разработки и производства
  • Как добавить амперсанд для значения в файле конфигурации приложения ASP.net/C#
  • Вложенное приложение ASP.NET в IIS, наследующее родительские настройки конфигурации?
  • Использовать преобразование web.config Visual Studio для отладки
  • Ограничить доступ к определенному controllerу по IP-адресу в бета-версии ASP.NET MVC
  • Хранить массив строк в appSettings?
  • Удаление .aspx со страниц с использованием rewriteModule?
  • Отладка / выпуск Web.Config
  • Шифрование строки подключения в web.config
  • Как защитить пароли, хранящиеся в web.config?
  • Давайте будем гением компьютера.