Должно ли соединение ODBC использовать пароли открытого текста? - PullRequest
1 голос
/ 02 ноября 2009

Мне было поручено защитить строку подключения в классическом приложении ASP, и мне интересно, стоит ли мне просто откусить пулю и обновить все приложение до ASP.NET или есть простое исправление.

В настоящее время приложение подключается к источнику данных ODBC с помощью строки подключения, подобной этой:

DSN=Mydb;uid=myuser;pwd=mypassword;DATABASE=mydb

Мой вопрос: возможно ли каким-то образом зашифровать этот пароль или удалить ODBC из уравнения?

Ответы [ 3 ]

2 голосов
/ 02 ноября 2009

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

1 голос
/ 02 ноября 2009

Вместо ODBC вы можете рассмотреть OLEDB. Я обычно рекомендую последнее (с возможными исключениями, например, когда нужно / например, косвенное указание, обеспечиваемое конфигурацией ODBC, которая позволяет переключать базы данных без изменения конфигурации приложения или исходного кода).

РЕДАКТИРОВАТЬ: при быстром чтении вопроса я пришел к выводу, что вы используете MySQL (все эти "my" в фрагменте conn. String ...), и, следовательно, следующие my не применяются, если другая база данных находится в использовать ...

Однако, так как вы пытаетесь не указывать пароль в строке подключения, возможно, будет невозможно использовать OLEDB, так как Документация MySQL для этого типа подключения, похоже, не допускает альтернативную аутентификацию, но AccountID / пароль.

Поэтому вам может понадобиться / как возможность вызывать ODBC со встроенной защитой и иметь учетную запись / пароль MySQL, сохраненную на уровне конфигурации ODBC для этого источника. Таким образом, на пароль не ссылаются на уровне приложения (но он все еще находится в конфигурации ODBC ...).
В ODBC пара ключ-значение строки соединения для использования встроенной защиты -

"Integrated Security=SSPI" 
which I believe is equivalent to 
"Trusted_Connection=yes"

Полезная ссылка на строки подключения имеет точное имя www.connectionstrings.com

0 голосов
/ 02 ноября 2009

Другой альтернативой является шифрование строки подключения с использованием некоторого алгоритма (или с использованием некоторого компонента, например RSADLL), а затем расшифровка строки подключения в приложении.

Не забудьте предоставить страницу обслуживания, позволяющую администраторам создавать зашифрованную строку подключения.

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