问题标签 [directoryservices]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
236 浏览

active-directory - 使您的程序与 Active Directory/终端服务兼容时要遵循的准则

想知道在编写一个应用程序时是否应该遵循任何指导方针,该应用程序不仅应该在普通的非联网计算机上运行,​​而且还应该在使用 Active Directory(或其他一些目录服务)和/或设置的计算机/网络上运行终端服务?我应该注意什么,注意什么等?

0 投票
2 回答
4909 浏览

active-directory - 如何将 System.DirectoryEntry“uSNChanged”属性值更改为 Int64

我正在尝试获取目录服务对象的“uSNChanged”值的 Int64 值。不幸的是,它总是作为某种 COM 对象返回。我尝试过使用转换为 Int64、调用 Int64.Parse() 和调用 Convert.ToInt64()。这些都不起作用。

对于给定的 DirectoryEntry 对象,此代码将显示属性:

这是输出:

如何将该 System.__ComObject 转换为 Int64?


使用的解决方案:

这是我根据以下marc_s的解决方案使用的解决方案:

0 投票
2 回答
1706 浏览

.net - 是 DirectorySearcher.SizeLimit = 1 对于 FindAll() 等于 FindOne() [DirectoryServices/.net]

在 .net 中使用 DirectorySearcher 时,这两个语句是否相等?

两者相同:

第一个声明

第二个声明

...除了显然 FindOne() 返回一个 SearchResult 对象和 FindAll() 返回一个 SearchResultCollection 对象

0 投票
2 回答
1866 浏览

.net - SearchResultCollection 的 GetDirectoryEntry 是否必须再次查询 ActiveDirectory?[目录服务/.net]

在 .net 中使用 DirectorySearcher 的 FindAll() 方法时,SearchResultCollection 的 GetDirectoryEntry() 方法是否需要再次访问 Active Directory?例如...

0 投票
3 回答
490 浏览

active-directory - 如何放弃 System.DirectoryServices.Protocols 中的长时间搜索

我一直在尝试解决如何在 System.DirectoryServices.Protocols 中取消长时间运行的 AD 搜索。任何人都可以帮忙吗?

我查看了 RootDSE 上的 supportControl/supportedCapabilities 属性,它们不包含 1.3.6.1.1.8 OID,所以我认为这意味着它不支持此处定义的 LDAP CANCEL 扩展操作:https://www。 rfc-editor.org/rfc/rfc3909

这留下了原始的 LDAP ABANDON 命令(请参阅此处的列表)。但似乎没有匹配的DirectoryRequest Class

有人有想法么?

0 投票
2 回答
1912 浏览

.net - 用户可以成为(基于 Ldap 的)目录服务实例中多个子树的一部分吗?

我对使用 .net 框架的基于 ldap 的目录服务编程非常陌生;因此有一个基本的愚蠢问题。

我想使用 System.DirectoryServices.Protocol 找出特定用户所属的所有子树。

首先,一个用户可以是“一个”目录服务实例中多个子树的一部分吗?如果是,那么如何使用“System.DirectoryServices.Protocol”命名空间找到特定用户所属的所有子树?

如果一个用户“只”属于一个特定的子树,那么我想我可以从用户的 DN 中找到子树的所有 DN。请让我知道是否有其他有效的方法?

更新:

具体来说我的问题,鉴于这是我的用户对象的 DN - “uid=DaffyD,OU=Ducks,OU=People,O=A”,它是否可以直接或间接存在于其他 OU 中?例如,“OU=Ducks”可以是除“People”之外的任何其他 OU 的一部分吗?

然后我的下一个问题,如果不对用户的 DN 进行某种字符串操作,我能否以某种方式找到该用户有效使用 System.DirectoryService.Protocol 的父节点的 DN 名称?

0 投票
2 回答
933 浏览

active-directory - System.DirectoryServices.AccountManagment 内存问题中的 FindByIdentity

我正在开发一个活动目录管理应用程序。除了典型的创建新用户、启用/禁用帐户、重置我的密码等之外,它还管理所有客户端 Web 应用程序的应用程序权限。应用程序管理由数千个 AD 组处理,例如由应用程序、部分和站点的 3 个字母代码构建而成,还有数百个 AD 组确定协调员可以授予哪些应用程序和位置的权限。所有这些组又属于其他组,因此我通常使用 MemberOf 属性过滤组列表,以查找用户直接所属的组(或者每个人都有权做任何事情)。我已经广泛使用了 System.DirectoryServices。在整个应用程序的 31 个位置使用 FindByIdentity 方法的 AccountManagment 命名空间。此方法调用内部 ADStoreCtx 类的私有方法 FindPrincipalByIdentRefHelper。SearchResultCollection 已创建但未处理,因此最终通常每天一次或两次 Web 服务器内存不足,并且 Web 服务器上的所有应用程序停止响应,直到 iis 被重置,因为 com 对象使用的资源从未被释放.

在某些地方我会退回到底层目录对象,但在很多地方我都在使用 Principal 上的属性 - 与在 .Net 2.0 目录服务代码中使用深奥的广告属性名称相比,这是一个巨大的改进。

我已经就这个问题联系了微软,它已经在 .Net 4.0 中得到修复,但他们目前没有计划在 3.5 中修复它,除非社区对此有兴趣。

我只在几个地方找到了有关它的信息

社区内容状态下的 MDSN 文档底部存在内存泄漏(我想我应该在使用该方法之前阅读过)

http://msdn.microsoft.com/en-us/library/bb345628.aspx

并且有问题的类是内部的,不会将 SearchResultsCollection 暴露在违规方法之外,因此我无法获取结果来处理它们或从类继承并覆盖该方法。

所以我的问题是

有没有其他人遇到过这个问题?如果是这样,你能解决它吗?

除了不使用任何 .Net 3.5 活动目录代码重写应用程序之外,我还有其他选择吗?

谢谢

0 投票
6 回答
91881 浏览

c# - 使用 DirectoryServices 从 C# 连接到 LDAP

我正在尝试连接到运行 LDAP 的 edirectory 8.8 服务器。我将如何在 .Net 中执行此操作?我仍然可以使用 System.DirectoryService 中的类,例如 DirectoryEntry 和 DirectorySearcher 还是它们是特定于 AD 的?我是否需要以不同的方式指定“连接字符串”?

我正在尝试类似下面的代码,但它似乎不起作用......

有任何想法吗?

0 投票
2 回答
3629 浏览

.net - 使用 DirectorySearcher 查询多个 OU

我有以下代码:

问题是我想搜索两个单独的 OU。

所以我所做的就是运行两次,一次在哪里

还有一秒钟

理想情况下,我可以做类似的事情

0 投票
4 回答
9818 浏览

c# - 如何使用 System.DirectoryServices.Protocols 更改密码

我们的用户存储是一个名为 eDirectory 的 LDAP 服务器。如何使用 System.DirectoryServices.Protocols 更改用户密码?