Ошибка подключения к базе
От: AndrewJD США  
Дата: 08.01.03 08:36
Оценка:
Доброго времени суток !
Этот вопрос всплывал в форуме пару месяцев назад, но он все еще актуален.
Необходимо подключиться к базе. Использую приблизительно следующий код:

string connectionString = "user id=userLogin; password=userPassword;address=serverName; Network Library=DBMSSOCN; initial catalog=base";
SqlConnection sqlConnection = new SqlConnection( connectionString );
sqlConnection.Open();


Этот код великолепно работает в консольном приложении, но в веб приложении вываливается на sqlConnection.Open(); -"SQL Server does not exist or access denied".


Если SQL Server стоит на моем компе или в локальной сети, то все тоже работает. Ошибка возникает при попытке обращения к внешнему серверу котрый стоит за фаерволом.
На SQLserver являюсь админом. IIS стоит на моей машине.
Мне также необходимо использовать SQL аутентификацию.

Подскажите, пожалуйста, что не так и как исправить.
"For every complex problem, there is a solution that is simple, neat,
and wrong."
Re: Ошибка подключения к базе
От: TK Лес кывт.рф
Дата: 08.01.03 09:11
Оценка:
Здравствуйте, AndrewJD, Вы писали:

AJD>Доброго времени суток !

AJD>Этот вопрос всплывал в форуме пару месяцев назад, но он все еще актуален. :shuffle:
AJD>Необходимо подключиться к базе. Использую приблизительно следующий код:

AJD>
AJD>string connectionString = "user id=userLogin; password=userPassword;address=serverName; Network Library=DBMSSOCN; initial catalog=base";
AJD>SqlConnection sqlConnection = new SqlConnection( connectionString );
AJD>sqlConnection.Open();
AJD>


AJD>Этот код великолепно работает в консольном приложении, но в веб приложении вываливается на sqlConnection.Open(); -"SQL Server does not exist or access denied".


AJD>

AJD>Если SQL Server стоит на моем компе или в локальной сети, то все тоже работает. Ошибка возникает при попытке обращения к внешнему серверу котрый стоит за фаерволом.
AJD>На SQLserver являюсь админом. IIS стоит на моей машине.
AJD>Мне также необходимо использовать SQL аутентификацию.

AJD>Подскажите, пожалуйста, что не так и как исправить.


А фаервол пропускает пользователя ASPNET ко внешним адресам? Можент сменить пользователя от имени которого работает ASPNET процесс.
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Re[2]: Ошибка подключения к базе
От: AndrewJD США  
Дата: 08.01.03 10:32
Оценка:
Здравствуйте, TK, Вы писали:

TK>А фаервол пропускает пользователя ASPNET ко внешним адресам? Можент сменить пользователя от имени которого работает ASPNET процесс.


Да, спасибо, это помогло

А тогда другой вопрос, как можно сменить пользователя от имени которого работает ASPNET процесс для конкретного веб приложения?. Т.е. не трогая файл machine.config ?
"For every complex problem, there is a solution that is simple, neat,
and wrong."
Re[3]: Ошибка подключения к базе
От: TK Лес кывт.рф
Дата: 08.01.03 10:34
Оценка: 2 (1)
Здравствуйте, AndrewJD, Вы писали:

TK>>А фаервол пропускает пользователя ASPNET ко внешним адресам? Можент сменить пользователя от имени которого работает ASPNET процесс.


AJD>Да, спасибо, это помогло :up:


AJD>А тогда другой вопрос, как можно сменить пользователя от имени которого работает ASPNET процесс для конкретного веб приложения?. Т.е. не трогая файл machine.config ?


Можно в IIS 6.0
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Re: Ошибка подключения к базе
От: Lexey Россия  
Дата: 08.01.03 15:13
Оценка:
Здравствуйте, AndrewJD, Вы писали:

AJD>Этот вопрос всплывал в форуме пару месяцев назад, но он все еще актуален.

AJD>Необходимо подключиться к базе. Использую приблизительно следующий код:

AJD>
AJD>string connectionString = "user id=userLogin; password=userPassword;address=serverName; Network Library=DBMSSOCN; initial catalog=base";
AJD>SqlConnection sqlConnection = new SqlConnection( connectionString );
AJD>sqlConnection.Open();
AJD>


AJD>Этот код великолепно работает в консольном приложении, но в веб приложении вываливается на sqlConnection.Open(); -"SQL Server does not exist or access denied".


AJD>

AJD>Если SQL Server стоит на моем компе или в локальной сети, то все тоже работает. Ошибка возникает при попытке обращения к внешнему серверу котрый стоит за фаерволом.

Судя по всему, лезет оно к SQL Server'у с trusted-аутентификацией, а не с SQL'ной.
Посмотри, включена ли у тебя вообще SQL-аутентификация на SQL Server'е.
И еще добавь Persist Security Info = True в строчку конекта.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.