<-
Apache > HTTP Server > Documentation > Version 2.0 > Modules

Apache Модуль mod_ldap

Description: объединение связи LDAP и услуги кэширования результата для использования другими модулями LDAP
Status: экспериментальный
Module Identifier: ldap_module
Source File: util_ldap.c
Compatibility: доступный в версии 2.0.41 и позже

резюме

этот модуль был создан, чтобы улучшить работу вебсайтов, полагающихся на связи конца с серверами LDAP. В дополнение к функциям, обеспеченным стандартными библиотеками LDAP, этот модуль добавляет объединение связи LDAP и тайник совместно используемой памяти LDAP.

чтобы позволять этот модуль, поддержка LDAP должна быть собрана в апрель-util. Это достигнуто, добавляя --with-ldap флаг к configure подлинник, строя Apacheа.

поддержка SSL требует этого mod_ldap быть связан с одним из следующих LDAP SDKs: OpenLDAP SDK (и 1.x и 2.x), Novell LDAP SDK или iPlanet(Netscape) SDK.

директивы

темы

top

Example Configuration

следующее - конфигурация примера, которая использует mod_ldap увеличивать работу Базовой аутентификации HTTP, обеспеченной mod_auth_ldap .

# Enable the LDAP connection pool and shared
# memory cache. Enable the LDAP cache status
# handler. Requires that mod_ldap and mod_auth_ldap
# be loaded. Change the "yourdomain.example.com" to
# match your domain.

LDAPSharedCacheSize 200000
LDAPCacheEntries 1024
LDAPCacheTTL 600
LDAPOpCacheEntries 1024
LDAPOpCacheTTL 600

<Location /ldap-status>
SetHandler ldap-status
Order deny,allow
Deny from all
Allow from yourdomain.example.com
AuthLDAPEnabled on
AuthLDAPURL ldap://127.0.0.1/dc=example,dc=com?uid?one
AuthLDAPAuthoritative on
require valid-user
</Location>

top

LDAP Connection Pool

связи LDAP объединены от запроса просить. Это позволяет серверу LDAP оставаться связанным и связанным готовый к следующему запросу, без потребности развязать/соединиться/снова переплести. Преимущества работы подобны эффекту HTTP keepalives.

на занятом сервере возможно, что много запросов будут пробовать и получать доступ к той же самой связи сервера LDAP одновременно. Где связь LDAP находится в использовании, Apache создаст новую связь рядом с оригинальным. Это гарантирует, что объединение связи не становилось узким местом.

нет никакой потребности вручную позволить объединение связи в Apacheской конфигурации. Любой модуль, используя этот модуль для доступа к услугам LDAP разделит объединение связи.

top

LDAP Cache

для улучшенной работы, mod_ldap использует агрессивную стратегию кэширования минимизировать количество раз, что с сервером LDAP нужно связаться. Кэширование может легко удвоить или утроить пропускную способность Apacheа, когда это служит страницам, защищенным с mod_auth_ldap. Кроме того, груз на сервере LDAP будет значительно уменьшен.

mod_ldap поддержки два типа LDAP, прячущего про запас в течение ищущейся/связывающейся фазы с a искать/связывать тайник и в течение сравнивающейся фазы с два тайники операции . Каждый URL LDAP, который используется сервером, имеет его собственный набор этих трех тайников.

The Search/Bind Cache

процесс выполнения поиска и затем связывание - самый отнимающий много времени аспект операции LDAP, особенно если справочник является большим. Ищущийся/связывающийся тайник используется, чтобы припрятать все поиски про запас, которые привели успешный, связывает. Отрицательные результаты ( то есть. , неудачные поиски, или поиски, которые не приводили к успешному, связывают), не прячутся про запас. Объяснение позади этого решения - то, что связи с недействительным мандатом являются только крошечным процентом от общего количества связей, таким образом, не пряча недействительный мандат про запас, размер тайника уменьшен.

mod_ldap хранит имя пользователя, восстановленное отличительное имя, пароль имел обыкновение связывать, и время связывания в тайнике. Всякий раз, когда новая связь начата с тем же самым именем пользователя, mod_ldap сравнивает пароль новой связи с паролем в тайнике. Если пароли соответствуют, и если припрятавший про запас вход не слишком стар, mod_ldap обходы ищущаяся/связывающаяся фаза.

поиск и связывает тайник, управляется с LDAPCacheEntries и LDAPCacheTTL директивы.

Operation Caches

в течение признака и отличенных функций сравнения названия, mod_ldap использования два тайника операции к тайнику сравнивающиеся операции. Первые сравниваются, тайник используется, чтобы припрятать результаты про запас, сравнивается сделанный, чтобы проверить на членство группы LDAP. Вторые сравниваются, тайник используется, чтобы припрятать результаты про запас сравнений, сделанных между выдающимися названиями.

поведением обоих из этих тайников управляют с LDAPOpCacheEntries и LDAPOpCacheTTL директивы.

Monitoring the Cache

mod_ldap имеет довольного тренера, который позволяет администраторам контролировать работу тайника. Название довольного тренера ldap-status , таким образом следующие директивы могли использоваться к доступу mod_ldap информация тайника:

<Location /server/cache-info>
SetHandler ldap-status
</Location>

принося URL http://servername/cache-info , администратор может получить сообщение статуса каждого тайника, который используется mod_ldap тайник. Отметьте это, если Apache не поддерживает совместно используемую память, то каждый httpd случай имеет его собственный тайник, так перезарядка URL приведет к различной информации каждый раз, в зависимости от который httpd привести в качестве примера обрабатывает запрос.

top

Using SSL

способность создавать связи SSL с сервером LDAP определена в соответствии с директивами LDAPTrustedCA и LDAPTrustedCAType . эти директивы определяют файл свидетельства или базу данных и тип свидетельства. Всякий раз, когда url LDAP включает ldaps: // , mod_ldap установит безопасную связь с сервером LDAP.

# Establish an SSL LDAP connection. Requires that
# mod_ldap and mod_auth_ldap be loaded. Change the
# "yourdomain.example.com" to match your domain.

LDAPTrustedCA /certs/certfile.der
LDAPTrustedCAType DER_FILE

<Location /ldap-status>
SetHandler ldap-status
Order deny,allow
Deny from all
Allow from yourdomain.example.com
AuthLDAPEnabled on
AuthLDAPURL ldaps://127.0.0.1/dc=example,dc=com?uid?one
AuthLDAPAuthoritative on
require valid-user
</Location>

если mod_ldap связан против Netscape/iPlanet LDAP SDK, это не будет говорить ни с каким сервером SSL, если тому серверу не подписали свидетельство известной Властью Свидетельства. Как часть конфигурации mod_ldap потребности, которые будут сказаны, где это может найти базу данных, содержащую известную Калифорнию. Эта база данных находится в том же самом формате как Netscape Communicator cert7.db база данных. Самый легкий способ получить этот файл состоит в том, чтобы запустить новую копию Netscape, и захватить окончание $HOME/.netscape/cert7.db файл.

top

LDAPCacheEntries Directive

Description: максимальное число записей в первичном тайнике LDAP
Syntax: LDAPCacheEntries number
Default: LDAPCacheEntries 1024
Context: сервер config
Status: экспериментальный
Module: mod_ldap

определяет максимальный размер первичного тайника LDAP. Этот тайник содержит успешный, ищут/связывают. Установите это к 0, чтобы выключить ищет/связывает кэширование. Размер по умолчанию - 1024 припрятавших про запас поиска.

top

LDAPCacheTTL Directive

Description: время, которое припрятало пункты про запас, остается действительным
Syntax: LDAPCacheTTL seconds
Default: LDAPCacheTTL 600
Context: сервер config
Status: экспериментальный
Module: mod_ldap

определяет время (в секундах), что пункт в ищущемся/связывающемся тайнике остается действительным. Неплатеж - 600 секунд (10 минут).

top

LDAPConnectionTimeout Directive

Description: определяет перерыв связи гнезда в секундах
Syntax: LDAPConnectionTimeout seconds
Context: сервер config
Status: экспериментальный
Module: mod_ldap

определяет ценность перерыва (в секундах), в котором модуль попытается соединиться с сервером LDAP. Если связь будет не успешна с периодом перерыва, то или ошибка будет возвращен, или модуль попытается соединиться со вторичным сервером LDAP, если Вы будете определены. Неплатеж - 10 секунд.

top

LDAPOpCacheEntries Directive

Description: число записей использовало для тайника, LDAP сравнивают операции
Syntax: LDAPOpCacheEntries number
Default: LDAPOpCacheEntries 1024
Context: сервер config
Status: экспериментальный
Module: mod_ldap

это определяет число записей mod_ldap будет использовать для тайника, LDAP сравнивают операции. Неплатеж - 1024 записей. Урегулирование этого к 0 повреждает кэширование операции.

top

LDAPOpCacheTTL Directive

Description: время, когда записи в тайнике операции остаются действительными
Syntax: LDAPOpCacheTTL seconds
Default: LDAPOpCacheTTL 600
Context: сервер config
Status: экспериментальный
Module: mod_ldap

определяет время (в секундах), что записи в тайнике операции остаются действительными. Неплатеж - 600 секунд.

top

LDAPSharedCacheFile Directive

Description: устанавливает файл тайника совместно используемой памяти
Syntax: LDAPSharedCacheFile directory-path/filename
Context: сервер config
Status: экспериментальный
Module: mod_ldap

определяет директивную дорожку и название файла файла тайника совместно используемой памяти. Если не набор, анонимная совместно используемая память будет использоваться, если платформа поддержит это.

top

LDAPSharedCacheSize Directive

Description: размер в байтах тайника совместно используемой памяти
Syntax: LDAPSharedCacheSize bytes
Default: LDAPSharedCacheSize 102400
Context: сервер config
Status: экспериментальный
Module: mod_ldap

определяет число байтов, чтобы ассигновать для тайника совместно используемой памяти. Неплатеж - 100 КБ. Если установлено в 0, кэширование совместно используемой памяти не будет использоваться.

top

LDAPTrustedCA Directive

Description: устанавливает файл, содержащий свидетельство Власти Свидетельства, которому доверяют, или базу данных
Syntax: LDAPTrustedCA directory-path/filename
Context: сервер config
Status: экспериментальный
Module: mod_ldap

это определяет директивную дорожку и название файла Калифорнии, которой доверяют, mod_ldap должен использовать, устанавливая связь SSL с сервером LDAP. Используя Директивный SDK Netscape/iPlanet, должно быть название файла cert7.db .

top

LDAPTrustedCAType Directive

Description: определяет тип файла Власти Свидетельства
Syntax: LDAPTrustedCAType type
Context: сервер config
Status: экспериментальный
Module: mod_ldap

следующие типы поддержаны:
DER_FILE - файл в двойном формате DER
BASE64_FILE - файл в формате Base64
CERT7_DB_PATH - файл базы данных свидетельства Netscape ")