2010-01-29 1 views
2

У меня есть метод AddUserToGroup, чтобы добавить пользователя в активную группу каталогов.Поддерживает ли активная директория изменение клиентов не в домене?

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

Когда group.Save() вызывается PrincipalOperationException брошено:

"Информация о домене не может быть восстановлена ​​(1355)"

Препятствует ли AD модификации от клиентов, не зарегистрированных домен? Я могу запросить домен успешно (например, вернуть пользователей в группе) от одного и того же клиента.

метод, чтобы добавить пользователя в группу:

public static void AddUserToGroup(string userId, 
            string groupName) 
{ 
    try 
    { 
     using (var pc = GetPrincipalContextFromConfig()) 
     { 
      var group = GroupPrincipal.FindByIdentity(pc, groupName); 
      try 
      { 
       group.Members.Add(pc, IdentityType.Guid, userId); 
       group.Save(); 
      } 
      catch (PrincipalExistsException e) 
      { 
       //... 
      }                 
     } 
    } 
    catch (DirectoryServicesCOMException e) 
    {     
     //... 
    } 
} 

ответ

2

Независимо ID ваше приложение работает под землей, необходимо иметь «написать» доступ к AD. В значительной степени любой ID может запрашивать AD, но только идентификатор, явно предоставленный привилегией, может писать на него.