Я новичок на форумах.
Я только начал работать над C # и веб-сервисами в течение последних 3 месяцев, и у меня есть замечательный веб-сервис, готовящийся к работе. К сожалению, существует специальный файл конфигурации (на самом деле XML-файл), который мы используем для хранения строк подключения.
Мы не хотим использовать раздел строки соединения web.config, потому что класс и связанный с ним xml-файл, который был написан собственными силами, будут использоваться другими проектами, а не только веб-сервисами. Проблема в том, что мне нужно зашифровать имя пользователя и пароли XML-файла «конфигурации» и расшифровать его в моем коде C #.
Достаточно сказать, что XML-файл имеет следующую структуру ...
<?xml version='1.0'?>
<!--
TEST ENVIRONMENT
-->
<thesystem>
<connectionString string="Data Source=( DESCRIPTION = ( ADDRESS_LIST = ( ADDRESS = ( PROTOCOL = TCP )( HOST = {0} )( PORT = {1} ) ) )( CONNECT_DATA = ( SERVER = DEDICATED )( SERVICE_NAME = {2} ) ) ); User Id= {3}; Password = {4};"/>
<oracleDetails>
<site name="thesite">
<schema dbname="thedb" dbHost="99.99.99.99" dbPort="9999" dbServiceName="SYSTEMSITE" dbUsername="xxx" dbPassword="yyy"/>
</site>
</oracleDetails>
</thesystem>
Я посмотрел в Интернете и сумел «обмануть» способ шифрования файла с помощью aspnet_regiis.exe
есть:
C: \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727> aspnet_regiis -pef oracleDetails. -пров DataProtectionConfigurationProvider
Шифрование раздела конфигурации ...
Преемник!
Я получил это для работы, переименовав тег и переименовав файл xml в web.config. Я обманул ASP.net, чтобы подумать, что я шифрую файл веб-конфигурации.
Теперь проблема в том, как мне расшифровать его в C #?
Я пытался использовать следующее ...
Configuration _myConfig = ConfigurationManager.OpenExeConfiguration("OURSYSTEM.config");
где OURSYSTEM.config
- это файл XML выше.
Программа выдает ошибку о том, что не может найти файл. Кроме того, OpenExeConfiguration больше подходит для приложений Win с файлом app.config.