Я хочу защитить строку соединения, поэтому невозможно "прочитать" ее для каких-либо целей.
на данный момент я делаю это так, и я знаю, что это похоже на брандмауэр Windows, открытый во всех направлениях...
private static string connStr = "server=localhost;user=MySuperSecretUser;database=MySuperSecretDatabase;port=3306;password=MySuperSecretPassword;sslMode=none;";
private static MySqlConnection conn = new MySqlConnection(connStr);
private static MySqlConnection conn2 = new MySqlConnection(connStr);
кто-нибудь знает, как я могу обеспечить его, поэтому никто не может помочь мне здесь?
Если вы используете стандартную.Net. Выполните следующие шаги для шифрования строки подключения
Шаг 1 Откройте командную строку с правами администратора
Шаг 2 В командной строке введите команду ниже
cd C:\Windows\Microsoft.NET\Framework\v4.0.30319
Шаг 3:
Если ваш веб-конфигуратор находится в каталоге каталога "D:\Articles\EncryptWebConfig", введите следующее для шифрования ConnectionString. Обратите внимание, что ConnectionString чувствителен к регистру
ASPNET_REGIIS -pef "connectionStrings" "D:\Articles\EncryptWebConfig"
ASP.NET автоматически расшифровывает содержимое файла Web.Config при обработке файла. Поэтому для дешифрования зашифрованных параметров конфигурации дополнительные шаги не требуются.
string ConnString = ConfigurationManager.ConnectionStrings [1].ToString();
Вы можете зашифровать его, но если ваш код сможет его использовать, кто-то, у кого есть доступ к этому коду, также может его расшифровать.
Решение, которое я видел, заключается в том, чтобы разработчики ограничивали доступ к коду, а администратору сервера - ограничивать доступ к файлам конфигурации.
Команда администратора сервера (кто уже знает эту информацию) использует инструмент шифрования для настройки файла конфигурации на веб-сервере. Программисты не могут получить доступ к конфигурационному файлу, и любой хакер, который читает конфигурационный файл, не может его расшифровать.