1

我需要使用 LDAP 从 Active Directory 林中查询增量更改。

简单的部分是查询对象的增量更新和新对象的创建。为此,您可以使用该whenChanged属性

例子:

(&(objectClass=user)(whenChanged>=20180501000000.0Z))

到目前为止,一切都很好。

但是查询已删除的记录呢?是否有某种方法可以查询 LDAP 以查找自给定时间以来删除的所有项目?

我确实知道 Active Directory 将对象标记为删除(实际上并没有删除内容)。而且我知道有一些方法可以删除对象:(请参阅此 msdn 帖子

但是我没有太多运气来创建一个 LDAP 查询,它针对一个非常普通的活动目录服务器,可以获取已删除帐户的列表。

相关:已删除用户的 LDAP 查询

我也试过这个建议:

(&(isDeleted=TRUE)(userAccountControl:1.2.840.113556.1.4.803:=512))

依然没有。

我怎样才能使这项工作?

4

1 回答 1

2

您使用什么编程语言进行查询?它似乎是一个LDAP 扩展控件(特别是LDAP_SERVER_SHOW_DELETED_OID),需要作为搜索属性的一部分启用,而不是在 LDAP 查询字符串本身中启用。因此,这取决于您搜索方式的实现。

例如,在 .NET 中,DirectorySearcher该类具有启用此功能的Tombstone属性

或者 PowerShell 的Get-ADObject命令有-IncludeDeletedObjects.

于 2018-05-08T18:43:44.303 回答