Требуется зашифрованная строка подключения и информация stmp в файле web.config

Я хочу сохранить зашифрованную строку подключения и информацию stmp в файле web.config.

Могу ли я хранить строку подключения и информацию SMTP в зашифрованном файле web.config, где мне нужно просто расшифровать и использовать?

OR

В какой точке / событии я могу зашифровать строку подключения и SMTP и сохранить в web.config? (и если в web.config произошли изменения, истек ли существующий сеанс?)

Какое лучшее решение?

Спасибо


person Muhammad Akhtar    schedule 24.08.2009    source источник


Ответы (1)


Это легко сделать с помощью aspnet_regiis.exe - посмотрите на pe / Параметры pd / pef и pdf. Вы также можете сделать это программно. Он работает путем шифрования определенного раздела конфигурации. В вашем случае это разделы connectionStrings и smtp.

Вы можете использовать DPAPI или RSA, и вы можете зашифровать как на всей машине, так и на конкретной учетной записи пользователя.

person RichardOD    schedule 24.08.2009
comment
Я использую этот код при изменении программного обеспечения, но получаю сообщение об ошибке, я нахожусь в среде разработки - person Muhammad Akhtar; 24.08.2009
comment
public void ProtectSection () {System.Configuration.Configuration config = ConfigurationManager.OpenExeConfiguration (Server.MapPath (~ / Web.config)); ConfigurationSection section = config.GetSection (connectionStrings); section.SectionInformation.ProtectSection (RsaProtectedConfigurationProvider); section.SectionInformation.ForceSave = true; config.Save (ConfigurationSaveMode.Full); } - person Muhammad Akhtar; 24.08.2009
comment
Можете ли вы проверить, в чем проблема, я буду благодарен за ваши усилия - person Muhammad Akhtar; 24.08.2009
comment
Какую ошибку вы получаете? В качестве дополнительной проблемы, если вы делаете это внутри своего веб-приложения, вам следует изучить WebConfigurationManager.OpenWebConfiguration msdn.microsoft.com/en-us/library/ms151456.aspx - person RichardOD; 24.08.2009
comment
Я получаю эту ошибку. Произошла ошибка при выполнении обработчика раздела конфигурации для connectionStrings. - person Muhammad Akhtar; 24.08.2009
comment
Хорошо, а что такое InnerException? - person RichardOD; 24.08.2009
comment
Не удалось зашифровать раздел connectionStrings с помощью поставщика RsaProtectedConfigurationProvider. Сообщение об ошибке от поставщика: объект уже существует. \ R \ n - person Muhammad Akhtar; 25.08.2009
comment
Я пытаюсь реализовать с помощью msdn.microsoft.com/en-us/library/ ms998283.aspx - person Muhammad Akhtar; 26.08.2009
comment
когда я запускаю эту команду aspnet_regiis -pe connectionStrings -app / WebFarmRSA -prov CustomProvider, я получаю это сообщение об ошибке. Невозможно открыть конфигурацию виртуального пути '/ ConStringEncrypt' и сайт 'Default Web Site' - person Muhammad Akhtar; 26.08.2009
comment
кроме этой команды я не получаю никаких ошибок, пожалуйста, помогите ...... У меня проблемы с прошлыми 2 днями. Спасибо - person Muhammad Akhtar; 26.08.2009