Соединение Ingres на развернутом сайте IIS - PullRequest
3 голосов
/ 20 июля 2009

У меня есть приложение .net 2.0, размещенное на IIS, которое подключается к базе данных Ingres. Соединение использует iBatis с драйвером ODBC для соединения с базой данных ingres, защищенной паролем установки.

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

ERROR [5000H] [CA][Ingres ODBC Driver][Ingres]User authorization check failed.
        Your user identifier was not known to this installation.
        Contact your system manager for further assistance.
ERROR [08S01] [CA][Ingres ODBC Driver][Ingres]The connection to the server has been aborted.

Мне интересно, почему установочный пароль будет нормально работать против моего сеанса отладки и отказывается подключаться за IIS? Использует ли IIS другое имя, отличное от имени моего компьютера, для установления соединения с паролем установки?

1 Ответ

1 голос
/ 21 июля 2009

Соединение отклоняется, поскольку целевой сервер не знает о том, что пользователь пытается подключиться, или этот пользователь не был добавлен. Проверьте, является ли владелец процесса вашего локального экземпляра IIS действительным пользователем ingres. IIRC имя учетной записи обычно выглядит как IUSR_MACHINENAME, где MACHINENAME - это имя хоста вашего IIS-бокса. Добавьте учетную запись пользователя, используя следующий SQL на сервере:

echo "create user IUSR_MACHINENAME\g" | sql iidbdb
...