MaddyMax
Guest
Вопрос про Apache, PHP, MSSQL2000 и NT-аутентификацию в домене Windows
Добрый день!
Доводилось ли вам делать следующее (и возможно ли это вообще)?
Есть домен Windows 2000. В нем много компьютеров.
Среди них есть WEB-сервер для внутренних нужд (Windows 2000 + Apache + PHP4). Еще среди них есть MSSQL2000 сервер.
На Web-сервере есть сайт, который должен получать данные из БД c сервера MSSQL.
Так вот. Возможно ли сделать так, чтобы коннект к MSSQL происходил от имени пользователя домена, который зашёл на сайт?
NTLM на Apache я настроил. В переменной $_SERVER['remote_user'] лежит имя доменного пользователя. Пользователей не из домена не пускает.
А дальше облом. В php.ini есть директива mssql.secure_connection. Установил ей ON.
И нифига. Теперь функция mssql_connect() игнорирует имя и пароль, которые переданы ей, и коннектится под записью "NT authority/АНОНИМНЫЙ ВХОД". Естественно, коннект отвергается.
Да. По умолчанию сервис Apache на WEB-сервере стартует под записью LocalSystem. Если заставить apache стартовать под каким-либо пользователем домена, то коннект к MSSQL проходит, но ИМЕННО под этим пользователем (вне зависимости от того, кто сейчас запросил страницу с сайта).
Можно ли решить эту проблему?
Мне надо, чтобы коннект к MSSQL происходил под тем пользователем NT-домена, который зашёл на сайт.
Спасибо.
Добрый день!
Доводилось ли вам делать следующее (и возможно ли это вообще)?
Есть домен Windows 2000. В нем много компьютеров.
Среди них есть WEB-сервер для внутренних нужд (Windows 2000 + Apache + PHP4). Еще среди них есть MSSQL2000 сервер.
На Web-сервере есть сайт, который должен получать данные из БД c сервера MSSQL.
Так вот. Возможно ли сделать так, чтобы коннект к MSSQL происходил от имени пользователя домена, который зашёл на сайт?
NTLM на Apache я настроил. В переменной $_SERVER['remote_user'] лежит имя доменного пользователя. Пользователей не из домена не пускает.
А дальше облом. В php.ini есть директива mssql.secure_connection. Установил ей ON.
И нифига. Теперь функция mssql_connect() игнорирует имя и пароль, которые переданы ей, и коннектится под записью "NT authority/АНОНИМНЫЙ ВХОД". Естественно, коннект отвергается.
Да. По умолчанию сервис Apache на WEB-сервере стартует под записью LocalSystem. Если заставить apache стартовать под каким-либо пользователем домена, то коннект к MSSQL проходит, но ИМЕННО под этим пользователем (вне зависимости от того, кто сейчас запросил страницу с сайта).
Можно ли решить эту проблему?
Мне надо, чтобы коннект к MSSQL происходил под тем пользователем NT-домена, который зашёл на сайт.
Спасибо.