| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Сеть > php & active directory |
| Автор: arcady 4.10.2005, 10:27 |
| Здравствуйте. Есть внутренний сайт предприятия: apache-1.3.33 + php-5.0.5 (как модуль) под windows 2000 server. Отдельно есть контроллер домена под ActiveDirectory. Авторизация на сайте осуществляется запросом логина и пароля у пользователя. Задача - сделать так, чтобы php-сценарий получал логин и пароль пользователя из ActiveDirectory, без выдачи запроса пользователю. Поиск в интернете говорит, что надо как-то увязать ldap и http-аутентификацию, но пока не нашёл точного ответа, как? С php работаю недавно, прошу не пинать. Особенно буду благодарен за примеры кода. |
| Автор: DENNN 5.10.2005, 08:51 |
| ИМХО, будет достаточно трудно и работать далеко не на всех конфигурациях. Вам нужно копать в сторону NTLM авторизации - именно такой механизм используется для авторизации внутри сетей виндоус. При открытии страницы необходимо послать такой запрос броузеру, что практически нереально сделать на обычном хостинге, где кроме 80-го порта все зарыто. NTLM-авторизация возможна при коннекте к прокси-серверу. Если сайт висит в вашей внутренней сети, то можно заставить пользователей подключаться через прокси, который будет их авторизовать и предоставлять эти данные скрипту или, к примеру, выкладывать их в общую БД. Например SQUID умеет аторизовать пользователй согласно записям в домене (посредством Samba). P.S. не все броузеры поддрживают такую прозрачную авторизацию. Так на Mozilla (но не FireFox!) будет выброшенно окно с порсьбой ввести логин, праоль и домен пользователя. P.S.S. В intranet без маршрутизации в одном сегменте можно на этапе соединения попростить IE авторизоваться. Но опять же,это, гм, не совсем по стандртам и никто не гарантирует, что завтра МС очередной фортель не выкинет и вся система не встанет. |