Денвер + LDAP + Joomla = Корпоративный портал
После долгих усилий я смог подружить Денвер, Joomla и авторизацию через LDAP. Может у кого нибудь и есть подобный опыт, может для кого то это даже и не задача, но я до недавнего времени не знал как именно происходит авторизация через LDAP.
Подробности ниже.
В общем не буду «лить воду» — по сути.
Качаем необходимое для дела
1. Денвер качаем тут
1.1. Так же потребуется это.
2. Joomla качаем тут
Начинаем мастерить
Я думаю ни для кого не станет великой задачей развернуть joomla на localhost'е, так что я перейду к самому интересному — к настройка LDAP.
О том как именно настроить модуль я нашел в Интернете оч. много инфы и почти вся она была правильна, но при попытке входа через учетку AD — результатом был белый экран.
Пример настройки модуля LDAP (естественно он должен быть включен)
Хост — IP_Контролера
Порт — 389
Ldap V3 — Да
Выполнять TLS — Нет
Следовать перенаправлениея — Нет
Метод авторизации — Привязать и найти
Базовый DN — dc=domen,dc=ru
Строка поиска — sAMAccountName=[search]
Пользоватлеский DN — пусто
Имя пользователя подключения — Учетка_доменного_админа@domen.ru
Пароль — Пасс доменного админа
Map: Full Name — displayName
Map: e-mail — mail
Map: User id — uid
Так вот есть один маленький нюанс, который я бы не нашел если бы не голос логики который подсказал как составить запрос в поисковике, результатом была найдена статья, которая содержит инструкцию по привязке LDAP к Denwer'у
Чтобы Denwer, установленный на Windows 2003 Server мог бы нормально авторизоваться посредством протокола LDAP и работать с СУБД MS SQL необходимо:
1. Остановить Denwer
2. В файле \usr\local\php5\php.ini раскомментировать строки extension=php_ldap.dll и extension=php_mssql.dll
3. В том же файле раскомментировать строку extension_dir = "/usr/local/php5/ext" и убедиться в корректности написания пути
4. Скопировать файлы:
php_mssql.dll
php_ldap.dll
php4ts.dll
ntwdblib.dll
libsasl.dll
4. в папки \usr\local\php5\ext\ и %SystemRoot%\System32\
Установить пакет расширений для Denwer:
Denwer3_PHP5_2010-11-07_php5.3.1
5 Скопировать ssleay32.dll и libeay32.dll из папки \usr\local\php5\ в папки \usr\local\apache\bin\ и \usr\local\php5\ext\
6 Убедиться, что п.2 выполнен, то есть что в файле \usr\local\php5\php.ini раскомментированы строки extension=php_ldap.dll и extension=php_mssql.dll
7 Запустить Denwer
Итог
В итоге я собрал jooml'у, правда пришлось по рыскать на счет плагинов, тем, модулей и т.п., потому что для 1.7 я нашел гораздо меньше всего этого добра чем для 1.5.
В общем на этом все.