首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Sys.AD.AM .Net 3.5类时全局编录的活动目录搜索

问使用Sys.AD.AM .Net 3.5类时全局编录的活动目录搜索
EN

Stack Overflow用户
提问于 2010-07-09 06:41:58
回答 1查看 1.4K关注 0票数 0

我使用System.DirectoryServices.AccountManagement类来查询Active Directory。

我可以使用各种上下文查询域,但我找到的每个示例都需要一个域名。

代码语言:javascript
复制
string domain = "MYDOMAIN";
PrincipalContext ctx= new PrincipalContext(ContextType.Domain, domain);

通常这不是问题,但是,我们有一些用户存在于一个子域中。我已经找到了一种方法,可以通过解析出他们的user.identity.name中的域名信息来搜索他们的帐户详细信息。

代码语言:javascript
复制
string loggedUser = User.Identity.Name;
string domain = loggedUser.Split(new char { '\\' })[0];
PrincipalContext ctx = new PrincipalContext(ContextType.Domain, domain);
using (ctx) {
  // Do searches, etc. here
}

我们希望改用GUID作为我们的唯一标识符,因为我相信GUID在所有域中都是唯一的,而名称可以改变(结婚、离婚等)。

使用旧的目录搜索器web服务,我们能够查询全局编录( GC )并找到用户,而不管它们的域或子域,因为域是受信任的……我正在使用新的3.5 S.DS.AM类寻找与GC搜索相同的“功能”。这有可能吗?

EN

回答 1

Stack Overflow用户

发布于 2011-02-16 17:12:31

首先,domain不是必填项:

代码语言:javascript
复制
var principalContext = new PrincipalContext(ContextType.Domain);

但这对你没有帮助。我认为你需要建立一个域名列表。然后,您可以使用S.DS.AM搜索每个域。您可以使用S.DS.ActiveDirectory森林对象构建您的域列表。或者,您可以使用GC://名字对象使用S.DS.DirectorySearcher进行GC搜索。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3208540

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档