NeedHelpPlease Ответов: 0

Как подключиться к локальному серверу LDAP с помощью MVC 5


Я пытаюсь подключиться к локальному серверу LDAP, который я настроил с помощью Apache Directory Studio. Im использует Visual Studio 2015 enterprise update 2 и MVC 5.

Что я уже пробовал:

Это два подхода, с которыми я работаю:

public void ldap()
    {

        try
        {
            DirectoryEntry entry = new DirectoryEntry("LDAP://localhost:10389");
            DirectorySearcher mySearcher = new DirectorySearcher(entry);

            var result = mySearcher.FindOne();

        }
        catch (System.Runtime.InteropServices.COMException)
        {
            System.Runtime.InteropServices.COMException exception = new System.Runtime.InteropServices.COMException();
            Console.WriteLine(exception);
        }
        catch (InvalidOperationException)
        {
            InvalidOperationException InvOpEx = new InvalidOperationException();
            Console.WriteLine(InvOpEx.Message);
        }
        catch (NotSupportedException)
        {
            NotSupportedException NotSuppEx = new NotSupportedException();
            Console.WriteLine(NotSuppEx.Message);
        }
     }

После var result = mySearcher.Выполняется функция FindOne (), System.Runtime.InteropServices.COMException ' в системе.Каталог.dll возникает, заявляя, что при вызове COM-компонента была передана ошибка HRESULT E_FAIL.

Я понятия не имею, что это значит, и не нашел ничего полезного в Google.

2-й подход:

try
        {
            LdapConnection ldapConnection = new LdapConnection("LDAP://localhost:10389");

            var networkCredential = new NetworkCredential("cbrunato", "c2VjcmV0", "dc=example,dc=com");
            ldapConnection.SessionOptions.SecureSocketLayer = true;
            ldapConnection.SessionOptions.VerifyServerCertificate += delegate { return true; };
            ldapConnection.AuthType = AuthType.Negotiate;
            ldapConnection.Bind(networkCredential);
        }
        catch (Exception e)
        {
            Console.WriteLine(e.Message);
        }

После ldapConnection.Bind (networkCredential) выполняется, я получаю сообщение об ошибке "LDAP-сервер недоступен".

Когда я останавливаю сервер ldap и запускаю программу, я получаю одни и те же ошибки, поэтому я предполагаю, что не получаю соединения с моим сервером ldap с обоими подходами, но я понятия не имею, почему.

Я очень благодарен за любую помощь.

0 Ответов