从活动目录组中获取联系人和用户

时间:2013-11-15 16:38:26

标签: c# active-directory

我正在查询AD并从特定组中获取所有用户。我现在还需要获得这些组中的所有联系人,但我找不到联系人。

我的AD连接​​:

AD = new PrincipalContext(ContextType.Domain, ConfigurationManager.AppSettings["ADPath"], ConfigurationManager.AppSettings["ADServiceAccount"], ConfigurationManager.AppSettings["ADServiceAccountPassword"]);

获取群组中的所有用户:

  GroupPrincipal group = GroupPrincipal.FindByIdentity(Global.AD,((grpname.Length > 0)? grpname: "NY Directory Group"));

foreach (Principal princ in @group.Members)//.Where(princ => princ.StructuralObjectClass == "user"))

最初我有过princ.StructuralObjectClass的过滤器,我删除它以包含“user”以外的对象,但我仍然只是获得用户。

有什么想法吗?

由于

1 个答案:

答案 0 :(得分:0)

据我所知,System.DirectoryServices.AccountManagement命名空间提供了对AD,LDS等多个主要商店的用户,计算机和组安全主体的统一访问和操作。

由于联系人不是安全主体,您可能应该使用System.DirectoryServices命名空间来处理所有非安全对象。