Аутентификация в apache через modXLdapAuth
Published on Апрель 23, 2009 by Support · Комментариев нет
Для того, чтобы аутентифицировать пользователя по сертификату в Apache достаточно добавить соответствующую директиву (SSLVerifyClient). adidas pas cher Но в таком случае очень неудобно строить политику доступа — нет ни базы сертификатов, с которой бы можно было оперировать, ни возможностей по разграничению доступа (авторизации). На помощь приходит модуль modXLdapAuth (homepage), который использует LDAP как хранилище пользовательских данных, взятых из сертификатов и предоставляющий дополнительные средства для реализации политики доступа к закрытым ресурсам. adidas superstar aliexpress Единственное ограничение с которым я столкнулся — модуль работает только с Apache 2.0.x (ветки 1.3 и 2.2 не поддерживаются). adidas zx flux femme Прежде чем начинать сборку модуля необходимо подготовить LDAP сервер — необходимо включить в конфигурацию сервиса дополнительную схему (schema) modXLDAPAuth [[[http://blogs.ssc.lt/roller-ui/resources/rs/modXLDAPAuth.schema 1Kb].]] В OpenLDAP это делается добавлением строки
include /etc/ldap/schema/modXLDAPAuth.schema
в основной файл конфигурации slapd.conf. После того как дополнительная схема загружена, можно создать запись о будущем пользователе, дополнительно указав атрибуты, взятые из сертификата пользователя:
CertificateClientCN - обычно имя, на которое выдан сертификат CertificateIssuer - CA, выдавший сертификат CertificateSerialNumber - серийный номер сертификата
По данным атрибутам будет осуществляться аутентификация с использованием сертификата. baskets adidas Получившаяся запись о пользователе будет иметь вид:
dn: uid=ivpetr,ou=People,o=company,c=ru objectClass: inetOrgPerson objectClass: organizationalPerson objectClass: person objectClass: top objectClass: Certmap uid: ivpetr structuralObjectClass: inetOrgPerson CertificateClientCN:: Petrov Ivan CertificateIssuer: Office CA CertificateSerialNumber: 0D <div style="display: none"><a href="http://wikiexback.com/" title="how to get your ex back">how to get your ex back</a></div>cn: Ivan mail: petrov@company.com telephoneNumber: +790234567 userPassword:: e3NoYX0vbitrQTZZTzc3NnJTQ29Wczc4TGFQdCs1eTQ9
После этого можно начинать сборку модуля:
./configure --with-apxs=/usr/local/apache2/bin/apxs --with-ldap-dir=/usr --with-openssl=/usr make && make installl
Пример конфигурации успешно собранного модуля
SSLRequireSSL SSLVerifyClient require SSLVerifyDepth 5 SSLOptions +FakeBasicAuth +StrictRequire +StdEnvVars +ExportCertData Order allow,deny Allow from all AllowOverride AuthConfig XLDAPAuthoritative on XLDAPAuthServer localhost XLDAPAuthBindDN "cn=manager,o=company,c=ru" XLDAPAuthBindPw "mamamia" XLDAPAuthSuffix "ou=People,o=company,c=ru" XLDAPAuthFilter "(&(CertificateIssuer=%{SSL_CLIENT_I_DN_CN})(CertificateSerialNumber=%{SSL_CLIENT_M_SERIAL})(CertificateClientCN=%{SSL_CLIENT_S_DN_CN}))" XLDAPAuthLogLevel info XLDAPAuthRemoteUserAttr uid
На основании приведенной выше конфигурации Apache будет вести себя следующим образом:
* для аутентификации будет требоваться сертификат пользователя (глубина проверки 5) * для поиска по LDAP серверу будет использоваться пользователь"cn=manager,o=company,c=ru" с паролем mamamia * поиск по LDAP директории будет осуществляться по фильтру - на основании атрибутов CertificateClientCN, CertificateIssuer, CertificateSerialNumber * переменная REMOTE_USER будет выставлена в данные, взятые из атрибута uid (в нашем случае, если пользователь Ivan Petrov пройдет аутентификацию, эта переменная будет выставлена в значение ivpetr)
Модуль успешно работает с пользовательскими данными на русском и литовском языках. adidas zx flux amazon Достаточно подробное описание работы и конфигурации модуля есть на его домашней странице. Единственное, что пока не понятно — почему до сих пор не существует серьезных разработок в области аутентификационных модулей на основе сертификатов, потому как в описанном модуле остаются недоработки и ошибки.
Смотрите также:
Exchange 2007
Если вы хотите прочитать предыдущие части этой серии статей, перейдите по ссылкам:
Проведение мониторинга Exchange 2007 с помощью диспетчера System ...
[+]
Введение
В этой статье из нескольких частей я хочу показать вам процесс, который недавно использовал для перехода с существующей среды Exchange 2003 ...
[+]
Если вы пропустили первую часть этой серии, пожалуйста, прочтите ее по ссылке Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (Часть ...
[+]
Если вы пропустили предыдущую часть этой серии статей, перейдите по ссылке Мониторинг Exchange 2007 с помощью диспетчера System Center Operations ...
[+]
Если вы пропустили предыдущие части этой серии статей, перейдите по ссылкам:
Подробное рассмотрение подготовки Active Directory для Exchange 2007 (часть 1)
...
[+]
If you missed the previous parts in this article series please read:
Exchange 2007 Install and Configuration from the command line (Part ...
[+]
Инструмент ExRCA
Текущий выпуск инструмента предоставляется только в целях тестирования и оснащен 5 опциями:
Тест подключения Outlook 2007 Autodiscover
Тест подключения Outlook 2003 RPC ...
[+]
Если вы хотите прочитать предыдущие части этой серии статей, перейдите по ссылкам:
Развертывание сервера Exchange 2007 Edge Transport (часть 1)
Развертывание ...
[+]
Если вы пропустили первую статью данного цикла, пожалуйста, перейдите по ссылке: Exchange 2007 Install and Configuration from the command line (Part ...
[+]
Если вы пропустили предыдущую часть этой серии статей, перейдите по ссылке Использование интегрированных сценариев Using Exchange Server 2007 – часть ...
[+]