LDAP через SSL в службе Windows

У меня есть приложение, которое подключается к серверу LDAP с помощью SSL. Проблема, с которой я сталкиваюсь, заключается в том, что когда я запускаю его как консольное приложение, оно успешно подключается, но когда я запускаю приложение как службу Windows, оно терпит неудачу.

Есть некоторая информация, которая может помочь:

  • ldap_sslinit ВСЕГДА возвращает успех

1 ldap_connect = 0 (успешно) со всеми портами LDAP, работающими как ПРИЛОЖЕНИЕ под пользователем АДМИНИСТРАТОР проверил порты 389,3268 без ssl и 636,3269 с SSL 2 ldap_connect = 0 (успешно) работает как служба с портом 389 или 3268 3 ldap_connect = 81 (Не подключен) работает AS SERVICE с портами 636 или 3269. Мы протестировали службу, работающую под администратором пользователя, а также протестировали под другим специальным пользовательским агентом со всеми разрешениями.

  • Мы включили некоторые разрешения на вход в качестве службы, а другие безуспешно.
  • Мы также добавили сертификаты на локальную машину и пользователю службы.

Пример теста

pLdapConnection = ldap_sslinit((PWCHAR)ldap_host.c_str(), ldap_port,1); // Secure LDAP 
// allways return success
ldap_set_option(pLdapConnection, LDAP_OPT_SSL, LDAP_OPT_ON); // set SSL option
ldap_set_option(pLdapConnection, LDAP_OPT_REFERRALS, LDAP_OPT_OFF); // required  
result = ldap_connect(pLdapConnection, &timeout);

результат = LDAP_SERVER_DOWN (0x51)

Я ценю любую помощь, которую вы можете мне оказать.


person evargas    schedule 07.01.2010    source источник


Ответы (1)


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

person Don    schedule 07.01.2010
comment
Подробнее... Запускаем сервис от имени: локальный пользователь, администратор, пользователь ezbio-agent. Изменения в свойствах групповой политики: добавлены права входа в качестве службы для администратора, гостя и т. д.... dsHeuristics=0000002 Разрешения безопасности DN: добавить гостя, добавить анонимный вход, добавить сетевую службу, добавить локальную службу ezbio-agent создан специальный пользователь для запуска агент со всеми разрешениями на все - person evargas; 07.01.2010
comment
Итак, вы запускаете его из консоли, вы можете подключаться через SSL или без шифрования (что, я предполагаю, вы делаете, используя 1 или 0 в последнем параметре ldap_sslinit), но работаете как служба от того же пользователя, вы можете подключаться только незашифрованным? Если бы это был ненадежный центр сертификации, не имело бы значения, как он работает. Я не могу придумать причину, почему это должно иметь значение. - person Don; 07.01.2010