Автоматически шифровать разделы web.config после развертывания / публикации?
-
11-09-2019 - |
Вопрос
У меня есть два связанных вопроса:
Каков наилучший способ управления развертыванием веб-проектов в разных средах?Я только что скачал Проект веб-развертывания .NET и, похоже, он справляется с такими вещами, как замена определенных разделов web.config
чтобы соответствовать окружающей среде, и это здорово.Другая вещь, которую я хотел автоматизировать, - это шифрование определенных разделов web.config
.Есть ли какой-нибудь способ 'auto-encrypt'
тот самый web.config
разделы после публикации?
Второй вопрос заключается в том, где вы храните свои пароли в web.config
?Я хочу зашифровать пароль, но не остальную часть Настройки приложений.Должен ли я создавать что-то на заказ web.config
область настройки конфигурации?
Решение
Привет, Джоэл! Проект веб-развертывания уже немного устарел. Вместо этого попробуйте инструмент MS Deploy (он будет поставляться вместе с vs2010, но сейчас он доступен отдельно).То, о чем вы спрашиваете, вероятно, не обрабатывается из коробки с помощью MSDeploy (шифрование DPAPI для конкретного компьютера), но поскольку инструмент интегрирован с powershell, вы можете использовать функцию удаленного взаимодействия powershell v2 CTP3 для запуска сценария для шифрования ваших конфигураций на на каждой машине удаленно (это единственный способ получить доступ к локальному DPAPI компьютера).
Вот этот парень делает нечто подобное:
http://forums.iis.net/p/1156413/1904975.aspx
-Ойсин
Другие советы
Мы используем Защищенная конфигурация RSA для шифрования разделов нашего web.config вручную после развертывания веб-приложения в новой среде.ОС защищает ключи за нас.Надеюсь, это поможет вам понять, как автоматизировать свое решение.
Теперь, похоже, в версии 3.5 Web Deploy добавлена поддержка шифрования разделов web.config после развертывания.
https://blogs.iis.net/msdeploy/archive/2013/07/09/webdeploy-3-5-rtw.aspx