我使用此代码过滤了我的活动目录域组:
List<Department> result = new List<Department>();
using (PrincipalContext ctx = getContext())
{
GroupPrincipal gp = new GroupPrincipal(ctx);
PrincipalSearcher search = new PrincipalSearcher(gp);
result = (from g in search.FindAll()
where !g.DistinguishedName.Contains("CN=Builtin")
select new Department()
{
name = g.Name,
description = g.Description
}).ToList();
}
return result;
正如您所看到的,我已经过滤了系统中包含的那些内置的内容。但是系统有一些类似于SQL Server创建的类型。我需要知道是否有办法只显示服务器管理员创建的那些。有没有办法做到这一点?
这是我的getContext代码:
public PrincipalContext getContext()
{
return new PrincipalContext(ContextType.Domain, WebConfigurationManager.AppSettings["SERVER"].ToString(), WebConfigurationManager.AppSettings["DOMAIN"].ToString() + @"\" + WebConfigurationManager.AppSettings["USER"].ToString(), WebConfigurationManager.AppSettings["PASSWORD"].ToString());
}
服务器上的值是:
<add key="SERVER" value="192.168.1.2"/>
<add key="DOMAIN" value="intra"/>
<add key="USER" value="xxxxx"/>
<add key="PASSWORD" value="xxxxxxx"/>
答案 0 :(得分:0)
SQL Server创建的组只是您计算机上的本地组 - 它们不在Active Directory中。您需要在本地商店中搜索这些内容。打开本地用户&amp;用于查看这些对象的组。