首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C#中的Active查询性能

C#中的Active查询性能
EN

Stack Overflow用户
提问于 2012-10-05 15:57:19
回答 1查看 1.6K关注 0票数 2

我正在编写一些代码来使用Active Directory。这段代码包含了一些函数,可以提取用户的帐户名,然后获取直接报告并获得组成员资格(根据需要完整的层次结构,这些函数可以递归运行,也可以非递归运行)。我看到了一些关于如何做到这一点的答案。然而,所有的答案似乎都依赖于卓越的名字。

外键(在数据库术语中)用于将这些对象关联到active目录中吗?我的直觉表明,objectGuid将是将项目相互关联的关键,因为这一点永远不会改变。因此,我认为如果重写查询以在DN上使用objectGuid,性能会更好。

  • 是否可以通过objectGuid查询包含用户/组的组?
  • 是否可以查询给定管理器(objectGuid)的直接报表的objectGuid。
  • objectGuid查询的性能是否优于其他属性,还是DN、sAMAccountName或其他关键属性之一是性能性能方面使用的最佳密钥?
  • 以上答案对大多数人都是正确的吗?LDAP实现,还是它们特定于MS AD?

提前谢谢你,

JB

ps。和我的大多数问题一样,表现上的差异可能是可以忽略不计的;这更多的是出于学术兴趣/满足我的好奇心。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-10-05 16:36:54

如果应用程序存储或缓存存储在Active域服务中的对象的标识符或引用,则对象GUID是使用的最佳标识符,原因如下:

  • 即使对象被重命名或移动,object的objectGUID属性也不会更改。
  • 使用对象GUID很容易绑定到对象。
  • 如果对象被重命名或移动,则objectGUID属性提供一个标识符,该标识符可用于快速查找和标识对象,而不必为所有标识该对象的属性组合具有条件的查询。

另一方面,如果对象被重命名或移动,则对象的可分辨名称会发生变化,因此可分辨名称不是可靠的对象标识符。

因此,使用objectGUID搜索目录不是性能问题,而是可重用性问题。

接下来是你的下一个问题:

是否可以通过objectGuid查询包含用户/组的组?

当然是的。看看这个链接

希望能帮上忙!

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

https://stackoverflow.com/questions/12749881

复制
相关文章

相似问题

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