Зашифруйте строку пароля в web.конфиг



Как я могу зашифровать строку пароля в web.конфиг?



<system.net>
<mailSettings>
<smtp deliveryMethod="Network">
<network host="smtp.gmail.com" userName="[email protected]" password="test" port="587" />
</smtp>
</mailSettings>
</system.net>


Как правильно это сделать?

561   3  

3 ответов:

Вам лучше всего шифровать весь этот раздел файла, так как для этого встроен инструментарий, и он автоматически расшифровывается при чтении конфигурационного файла (поэтому нет необходимости изменять код). Это полностью описано на MSDN и использует инструмент aspnet_regiis.exe.

Проверьте этот блог Скотта ГУ: шифрование сети.Значения конфигурации в ASP.NET 2.0

Шифрование Пользовательских Разделов Конфигурации

<configSections>
   <section 
      name="sampleSection" 
      type="System.Configuration.SingleTagSectionHandler" 
   />
</configSections>

<MySecrets
   FavoriteMusic="Disco" 
   FavoriteLanguage="COBOL" 
   DreamJob="Dancing in the opening ceremonies of the Olympics" 
/>

Шифрование MySecrets

aspnet_regiis -pef MySecrets 

Согласно ответу Дэвида М:

aspnet_regiis.exe -pe "system.net/mailSettings/smtp" -app "/myapp"

Обратите внимание, что aspnet_regiis чувствителен к регистру, поэтому убедитесь, что заглавная буква 'S' в mailSettings.

Comments

    Ничего не найдено.