Как защитить строку подключения в Windows Forms - PullRequest
0 голосов
/ 22 января 2019

Я создаю приложение Windows Form в C #.Я храню источник данных и исходный каталог в настройках.Но в строке подключения есть также имя пользователя и пароль.

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

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

У меня многопользовательская система. Итак, SQL Server на одном ПК, а все пользователи на разных компьютерах.Так что я не думаю, что создание всего пользователя в базе данных.

1 Ответ

0 голосов
/ 22 января 2019

Вместо использования SQL-аутентификации настоятельно рекомендуется получить доступ к базе данных с использованием учетных записей Windows пользователей. Если ваше приложение работает в домене AD, вам не нужно предоставлять каждому пользователю доступ к базе данных, но вы можете использовать группу AD для этой цели. См. ссылку о том, как включить проверку подлинности Windows в строке подключения.

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

Обратите внимание, что даже если вы используете шифрование, по крайней мере, текущая учетная запись пользователя должна иметь возможность дешифровать настройки для запуска программы. Это также подразумевает, что технически подкованный пользователь может создать небольшое приложение, которое отменяет шифрование и может таким образом получить доступ к учетным данным. Поэтому использование проверки подлинности Windows - действительно лучший вариант.

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