Запрос Ldap возвращает нулевой результат при развертывании - PullRequest
0 голосов
/ 10 мая 2010

Я использую очень простой запрос Ldap на моем сайте asp.net mvc 2.0:

String ldapPath = ConfigReader.LdapPath; String emailAddress = null;

        try
        {

            DirectorySearcher search = new DirectorySearcher(ConfigReader.LdapPath);

            search.Filter = String.Format("(&(objectClass=user)(objectCategory=person)(objectSid={0})) ", securityIdentifierValue);

            // add the mail property to the list of props to retrieve                    
            search.PropertiesToLoad.Add("mail");

            var result = search.FindOne();
            if (result == null)
            {
                throw new Exception("Ldap Query with filter:" + search.Filter.ToString() + " returned a null value (no match found)");
            }

            else
            {
                emailAddress = result.Properties["mail"][0].ToString();
            }
        }
        catch (ArgumentOutOfRangeException aoorEx)
        {
            throw new Exception( "The query could not find an email for this user.");
        }
        catch (Exception ex)
        {
            //_log.Error(string.Format("======!!!!!! ERROR ERROR ERROR !!!!! in LdapLookupUtil.cs getEmailFromLdap Exception: {0}", ex));
            throw ex;
        }
        return emailAddress;

Отлично работает на моей локальной машине. Он отлично работает, когда я запускаю его в VS2010 на сервере. При развертывании всегда возвращается нулевой результат.

Вот мой web.config:

Параметр конфигурации Asp.Net в Visual Studio. Полный список настроек и комментариев можно найти в machine.config.comments обычно находится в \ Windows \ Microsoft.Net \ Framework \ v2.x \ Config ->

раздел позволяет конфигурировать режима аутентификации безопасности, используемого ASP.NET для идентификации входящего пользователя. ->

<!--

-> раздел позволяет конфигурировать что делать, если / когда происходит необработанная ошибка во время исполнения запроса. В частности, это позволяет разработчикам настраивать страницы ошибок html отображаться вместо трассировки стека ошибок. ->

Я запускаю его в пуле приложений по умолчанию.

Кто-нибудь видит проблему? Это сводит меня с ума!

1 Ответ

0 голосов
/ 11 мая 2010

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

...