Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Login failed for user '(null)'  [new]
maq
Member

Откуда:
Сообщений: 40
У меня такая вот проблема. И в гуле искал. Что-то нашел, но проблема не решена.

Имеется контроллер домена в сети. На отдельном сервере Server1 (тоже член домена) Windows Server 2003 SP2 стоит SQL Server 2000 SP3, IIS. На другом (клиентском) ПК klient1 стоит SQL Server 2005.
Необходимо мне, сидя за своим klient1 разрабатывать сайт для размещения (в будущем) на Server1. Я тестирую сайт на IIS на klient1, т.е. сайт на IIS на klient1 должен работать с данными SQL Server 2000 из Server1. Все подключается в VS 2005 (в режиме разработки и запуска), работает. Но как только открываю сайт на klient1 (вне VS 2005) - ошибка Login failed for user '(null)'. Reason: Not associated with a trusted SQL Server connection. Попробовал сделать то же, но базу подключать уже с klient1. Только когда я создал пользователя в SQL Server 2005 Server1\ASPNET и дал ему доступ все пошло ок. Т.е. если и IIS, и БД сидят на одной машине все ок. Но когда машины разные - ну никак.
SQL Server на Server1 и klient1 работают в режиме mix mode.
Вариант с использованием SQL Server аутотентификацию не предлагать. У меня в папках IIS стоит встроенная проверка подлинности Windows, анонимный отключен.
23 июл 09, 16:21    [7452325]     Ответить | Цитировать Сообщить модератору
 Re: Login failed for user '(null)'  [new]
mike909
Member

Откуда:
Сообщений: 662
maq
У меня такая вот проблема. И в гуле искал. Что-то нашел, но проблема не решена.

Имеется контроллер домена в сети. На отдельном сервере Server1 (тоже член домена) Windows Server 2003 SP2 стоит SQL Server 2000 SP3, IIS. На другом (клиентском) ПК klient1 стоит SQL Server 2005.
Необходимо мне, сидя за своим klient1 разрабатывать сайт для размещения (в будущем) на Server1. Я тестирую сайт на IIS на klient1, т.е. сайт на IIS на klient1 должен работать с данными SQL Server 2000 из Server1. Все подключается в VS 2005 (в режиме разработки и запуска), работает. Но как только открываю сайт на klient1 (вне VS 2005) - ошибка Login failed for user '(null)'. Reason: Not associated with a trusted SQL Server connection. Попробовал сделать то же, но базу подключать уже с klient1. Только когда я создал пользователя в SQL Server 2005 Server1\ASPNET и дал ему доступ все пошло ок. Т.е. если и IIS, и БД сидят на одной машине все ок. Но когда машины разные - ну никак.
SQL Server на Server1 и klient1 работают в режиме mix mode.
Вариант с использованием SQL Server аутотентификацию не предлагать. У меня в папках IIS стоит встроенная проверка подлинности Windows, анонимный отключен.


Ламись к SQL_ю через COM+ и будет тебе счастье ...
23 июл 09, 16:56    [7452659]     Ответить | Цитировать Сообщить модератору
 Re: Login failed for user '(null)'  [new]
maq
Member

Откуда:
Сообщений: 40
автор
Ламись к SQL_ю через COM+ и будет тебе счастье ...

А если яснее?
23 июл 09, 17:40    [7453022]     Ответить | Цитировать Сообщить модератору
 Re: Login failed for user '(null)'  [new]
mike909
Member

Откуда:
Сообщений: 662
maq
автор
Ламись к SQL_ю через COM+ и будет тебе счастье ...

А если яснее?


1) Создаем COM+ компонент по работе с SQL_ем
2) Настраиваем его работу через определенную учетку
3) Дергаем этот компонент из IIS_а
4) Все работает уже много лет.

P.S. Проблема связана с тем, что IIS не занимается имперсонацией - отсюда и NULL DACL.
И вообще, эта тема не для этой конференции ...
23 июл 09, 17:47    [7453071]     Ответить | Цитировать Сообщить модератору
 Re: Login failed for user '(null)'  [new]
Козьма Прутков
Member

Откуда: Москва
Сообщений: 186
А как, позвольте, связана IIS-аутентификация с тем, от чьего имени приложение лезет в БД? Ничто не мешает оставить Windows-аутентификацию на каталоге в IIS, а в БД ходить от имени SQL-ного пользователя.

Если же хочется, чтобы в БД подключение устанавливалось от имени того пользователя, который пришел на сайт, то это тема для ASP.NET, а не SQL. Вот практически первая ссылка из google: тынц. Поищите, думаю, уже лет 7 как найдено и описано решение таким проблемам.

------------
Чем сложнее решение задачи, тем больше вероятность, что оно неправильное
23 июл 09, 18:05    [7453200]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить