LDAP again

От: Sergei I. Golod <rover_at_mx_ru>
Дата: Thu 13 Sep 2001 - 13:08:01 MSD


Добрый день.

Вот столкнулся с очередным глюком(или фичей? ;) в CommuniGate 3.4.7. Есть следующая конфигурация:
1. apache-1.3.19 с модулем авторизации apache_ldap_auth и следующей конфигурацией в .htaccess:
AuthType Basic
AuthName "LDAP auth:"
AuthLDAPUrl
ldap://ldap.mydomain.com:389/cn=city.tob.ru?uid?sub?(objectClass=*) Require user postmaster

2. CommuniGate 3.4.7 без Directory Based Domains, но в Domains/Directory integration включена опция "Store Passwords in regular Account Records", чтобы можно было логинится к LDAP-серверу через DN типа "uid=postmaster,cn=city.tob.ru", в противном случае поле userPassword пустое.

Так вот если стоит опция "require user postmaster", то коммунигейт выдает ошибку(лог ниже). Изучение исходных текстов apache_auth_ldap выявлено где происходит ошибка:

  if ((result = ldap_compare_s(sec->ldc->ldap, const_cast(dn),

          const_cast(attrib), const_cast(value))) ==
      LDAP_SERVER_DOWN) {

    ap_log_rerror(APLOG_MARK, APLOG_DEBUG|APLOG_NOERRNO, r,     "{%d} Server is down; reconnecting and starting over", (int)getpid());     auth_ldap_free_connection(r, 1);
    goto start_over;
  }

При вызове функции ldap_compare_s() CGP выдает "unknown request type 14". Это поправимо??? Параметры в функцию передаются правильные - проверено, attrib = "uid", dn= "uid=postmaster,cn=city.tob.ru", value="postmaster".

13:44:07.12 5 LDAP connection request from [217.106.182.5], socket=11 13:44:07.12 4 LDAP-00378([217.106.182.5]) got connection on [217.106.182.6], port 389
13:44:07.12 5 LDAP-00378([217.106.182.5]) input request(12): 02 01 01 60 07 02 01 02 04 00 80 00
13:44:07.12 4 LDAP-00378([217.106.182.5]) Logged in as anyone. authType=0 13:44:07.12 5 LDAP-00378([217.106.182.5]) out: 30 0C 02 01 01 61 07 0A 01 00 04 00 04 00
13:44:07.12 5 LDAP-00378([217.106.182.5]) input request(72): 02 01 02 63 43 04 0E 63 6E 3D 63 69 74 79 2E 74 6F 62
 2E 72 75 0A 01 02 0A 01 03 02 01 00 02 01 00 01 01 FF A0 20 87 0B 6F 62 6A 65 63 74
13:44:07.12 4 LDAP-00378([217.106.182.5]) searching(sub) 'cn=city.tob.ru' 13:44:07.12 4 LDAP-00378([217.106.182.5]) searching where (&(objectClass=*)(uid=postmaster))
13:44:07.12 4 LDAP-00378([217.106.182.5]) searching for (* objectclass ) 13:44:07.14 4 LDAP-00378([217.106.182.5]) 'uid=postmaster,cn=city.tob.ru' retrieved
13:44:07.14 5 LDAP-00378([217.106.182.5]) out: 30 81 8F 02 01 02 64 81 89 04 1D 75 69 64 3D 70 6F 73 74 6D 61 73 7 4 65 72 2C 63 6E 3D 63 69 74 79 2E 74 6F 62 2E 72 75 30 68 30 08 04 02 63 6E 31 02
13:44:07.14 2 LDAP-00378([217.106.182.5]) search finished 13:44:07.14 5 LDAP-00378([217.106.182.5]) out: 30 0C 02 01 02 65 07 0A 01 00 04 00 04 00
13:44:07.18 5 LDAP-00378([217.106.182.5]) input request(48): 02 01 03 60 2B 02 01 02 04 1D 75 69 64 3D 70 6F 73 74
 6D 61 73 74 65 72 2C 63 6E 3D 63 69 74 79 2E 74 6F 62 2E 72 75 80 07 6E 61 37 53 6C

13:44:07.18 4 LDAP-00378([217.106.182.5]) Logged in as
uid=postmaster,cn=city.tob.ru. authType=0
13:44:07.18 5 LDAP-00378([217.106.182.5]) out:  30 0C 02 01 03 61 07 0A 01
00 04 00 04 00
13:44:07.18 5 LDAP-00378([217.106.182.5]) input request(12): 02 01 04 60 07 02 01 02 04 00 80 00
13:44:07.18 4 LDAP-00378([217.106.182.5]) Logged in as anyone. authType=0 13:44:07.18 5 LDAP-00378([217.106.182.5]) out: 30 0C 02 01 04 61 07 0A 01 00 04 00 04 00
13:44:07.18 5 LDAP-00378([217.106.182.5]) input request(66): 02 01 05 6E 3D 04 1D 75 69 64 3D 70 6F 73 74 6D 61 73
 74 65 72 2C 63 6E 3D 63 69 74 79 2E 74 6F 62 2E 72 75 30 1C 04 03 75 69 64 04 15 61
13:44:07.18 1 LDAP-00378([217.106.182.5]) unknown request type 14
13:44:07.18 4 LDAP-00378([217.106.182.5]) closing connection
13:44:07.18 4 LDAP-00378([217.106.182.5]) releasing stream

wbr, Sergei.

##################################################################
Вы получили это сообщение потому, что подписаны на список рассылки   <CGatePro@mx.ru>.
Чтобы отписаться, отправьте сообщение на адрес <CGatePro-off@mx.ru>
Чтобы переключиться в режим дайджеста - mailto:<CGatePro-digest@mx.ru>
Чтобы переключиться в индексный режим - mailto:<CGatePro-index@mx.ru>
Для административных запросов адрес <CGatePro-request@mx.ru> Получено Thu Sep 13 09:08:07 2001

Этот архив был сгенерирован hypermail 2.1.8 : Tue 21 Feb 2006 - 03:14:08 MSK