Определить, входит ли пользователь в группу AD для приложения .NET 4.0

Я пытаюсь определить, является ли пользователь членом группы Active Directory (AD) для внутреннего приложения ASP.NET 4.0. Приведенный ниже код выдает ошибку исключения «Попытка получить доступ к выгруженному домену приложения» в последней строке (оператор возврата) в случае, если пользователь не является членом группы AD.

public static bool IsInADGroup(string userName, string groupName)
{
    var principalContext = new PrincipalContext(ContextType.Domain);
    UserPrincipal userPrincipal = UserPrincipal.FindByIdentity(principalContext, userName);
    if (userPrincipal == null)
        return false;

    GroupPrincipal groupPrincipal = GroupPrincipal.FindByIdentity(principalContext, groupName);
    if (groupPrincipal == null)
        return false;

      return userPrincipal.IsMemberOf(groupPrincipal);
}

Любые идеи по исправлению или другие обходные пути ?

14
задан Dave Johnson 23 August 2011 в 22:36
поделиться