Защита конфиденциальной информации в ASP.NET C # Web.config - PullRequest
0 голосов
/ 27 августа 2018

В моем текущем файле web.config есть информация, такая как validationKey и decrytionKey, открытая для просмотра в моей среде разработки.

Я хотел бы скрыть конфиденциальную информацию.

Изменяет ли что-либоиз этих настроек защищает его от воздействия?

Это мои текущие настройки:

enter image description here

1 Ответ

0 голосов
/ 27 августа 2018

Я понимаю, что вы хотите зашифровать файл веб-конфигурации и скрыть конфиденциальную информацию.

В ASP.NET 2.0 появилась новая функция безопасности.Любой раздел конфигурации в файле Web.config может быть зашифрован.Это можно сделать, вручную запустив инструмент aspnet_regiis или запрограммировав.Если у вас есть прямой доступ к вашему веб-серверу, вы можете сделать это, запустив следующую командную строку:

cd  %windows%\Microsoft.NET\Framework\versionNumber  

aspnet_regiis -pe "connectionStrings" -app "/SampleApplication" –prov RsaProtectedConfigurationProvider 

-pd section 

Расшифруйте раздел конфигурации.Этот параметр принимает следующие необязательные параметры:

· -app virtualPath указывает, что уровень должен быть расшифрован на уровне пути включения.

· -location subPath Указывает подкаталог для расшифровки.

· -pkm указывает, что Machine.config должен быть расшифрован вместо файла Web.config.

-pdf раздел webApplicationDirectory Расшифровывает указанный раздел конфигурации файла Web.config в указанном физическом (не виртуальный) каталог.

-pe раздел Зашифровывает указанный раздел конфигурации.Этот параметр принимает следующие необязательные модификаторы:

• Поставщик -prov указывает используемый поставщик шифрования.

· -app virtualPath указывает, что шифрование должно выполняться на уровне пути включения.

· -location subPath указывает подкаталог для шифрования.

· -pkm указывает, что Machine.config должен быть зашифрован вместо файла Web.config.

-pef sectionwebApplicationDirectory Зашифровывает указанный раздел конфигурации файла Web.config в указанном физическом (не виртуальном) каталоге.

Если вы используете виртуальный хост или тому подобное, который не имеет доступа к физическому серверу, вывсе еще может программно шифровать строку подключения.

Configuration config =Configuration.GetWebConfiguration(Request.ApplicationPath); 
ConfigurationSection section =config.Sections["connectionStrings"]; 
section.SectionInformation.ProtectSection("RsaProtectedConfigurationProvider");; 
config.Update (); 

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

Protected configuration

Вы можете обратиться к соответствующим документам, которые я ищу. Защита строк подключения и другой информации о конфигурации (C #)

Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...