System.DirectoryServices.AccountManagement
네임 스페이스의 일부인 GroupPrincipal
을 사용하여 string 형식의 목록을 채우려고하므로 사용자가 Active Directory 그룹의 구성원인지 확인할 수 있습니다. 지금까지 작성한 편집 된 수업은 다음과 같습니다.Active Directory 사용자 그룹 구성원 GroupPrincipal
public class ActiveDirectoryMembership
{
private PrincipalContext context = new PrincipalContext(ContextType.Domain, Environment.UserDomainName);
private List<string> GroupName {get;set;}
public ActiveDirectoryMembership()
{
//Code snipped - this part returns a list of users
populateGroups();
}
private void populateGroups()
{
GroupPrincipal SearchGroup = GroupPrincipal.FindByIdentity(context, "Group Name");
GroupName = new List<string>();
foreach (UserPrincipal p in GroupName.GetMembers())
{
GroupName.add(p.SamAccountName);
}
}
그래서 내가 잘못 가고 있습니까? (! BTW, NULL 검사)는 SearchGroup
에 그룹 주체를 받고있어 그리고 당신은 잡는거야 - 사전 :
를? ?? –
Matt이 질문은 실제 질문이 아닙니다.이 코드는 어떻게 작동합니까? 어떤 결과를 얻습니까? 중단 점을 확인하면 디버그 시간에 어떻게 동작합니까? 당신이 지금 얻고있는 것과는 다른 무엇을하고 싶습니까? –
죄송합니다. 사용자 목록이 없습니다. GroupName 값은 null입니다. 나는 사용자 목록을 볼 것으로 예상한다 (나는 그 그룹의 회원 인 사용자가 있음을 안다) - 그 말이 맞습니까? – Matt