У меня есть код, использующий DirectoryEntry
для управления локальным Active Directory через LDAP.В настоящее время я нахожу определенный OU
, добавляю в него пользователя, обновляю свойства пользователя и затем фиксирую все изменения:
DirectoryEntry ldapRoot = new DirectoryEntry(ldapString, user, password);
DirectoryEntry userGroup = ldapRoot.Children.Find("OU=OUGroup");
DirectoryEntry newUser = userGroup.Children.Add("CN=" + userName, "user");
newUser.Properties["displayName"].Value = displayName;
...
newUser.CommitChanges();
userGroup.Close();
ldapRoot.Close();
ldapString - это что-то похожее на LDAP:\\DC=company,DC=local
, в основном это просто выборкаКорневая запись.
Я изменяю несколько свойств, но все работает нормально.Однако у меня есть еще один OU
, называемый SharePoint_Groups, в котором есть группа, которая называется Internal
.Я хочу добавить нового пользователя в качестве члена этой группы, но я не знаю, как это сделать.Я попробовал следующее:
DirectoryEntry spGroup = ldapRoot.Children.Find("OU=Sharepoint_Groups");
DirectoryEntry internal = spGroup.Children.Find("CN=Internal");
Это не работает, и я не уверен, как мне обратиться к Internal
- является ли CN = правильным или я должен использовать какую-то другую спецификацию?
И, как только у меня будет правильная группа, как мне добавить к ней существующего пользователя?
Заранее спасибо