Подключение к открытию с использованием System.DirectoryService

StackOverflow https://stackoverflow.com/questions/3711879

  •  02-10-2019
  •  | 
  •  

Вопрос

Я пытался найти несколько учебных пособий о том, как подключиться к открытию, используя типы LDAP .NET безрезультатно. Может ли кто -нибудь указать мне на некоторые статьи/учебные пособия, в которых есть хорошие образцы при использовании Opends в качестве службы каталогов, а также доступ к ней с помощью C#.

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

DirectoryEntry directoryEntry = new DirectoryEntry
                                            {
                                                Path = @"LDAP://SUnnikris-va-d:389/dc=example,dc=com",
                                                Username = "uid=user.0",
                                                Password = "TestPass!",
                                                AuthenticationType = AuthenticationTypes.ServerBind
                                            };

        directoryEntry.RefreshCache();

        DirectoryEntry newUser = directoryEntry.Children.Add("uid=nuser,ou=People,dc=example,dc=com", "person");
        newUser.Properties["objectClass"].Value = new object[] { "top", "person", "organizationalPerson", "inetorgPerson" };
        newUser.Properties["uid"].Value = "nuser";
        newUser.Properties["givenName"].Value = "new";
        newUser.Properties["sn"].Value = "user";
        newUser.Properties["cn"].Value = "new user";
        newUser.Properties["userPassword"].Value = "nuser";
        newUser.CommitChanges();
Это было полезно?

Решение 2

Я понял это, Opends использует каноническое название в качестве суперпользователя для администрирования. По сути, проблема заключалась в учетных данных, которые я использовал, вместо UID мне пришлось указать это:-

NetworkCredential myCreds = new NetworkCredential("cn=Directory Manager", "TestPass!");

Другие советы

Вы также можете использовать System.DirectoryServices.Accountmanagement для реализации Easiser. Посмотрите здесь -> http://anyrest.wordpress.com/2010/06/28/active-directory-c/

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top