Active directory 从Active Directory同步数据库

Active directory 从Active Directory同步数据库,active-directory,Active Directory,我想将我的用户数据库与active directory中的用户和组同步。 我的应用程序从AD读取对象并将其复制到数据库,但随着AD的更改,这些对象会过时 有没有办法让active directory在对象发生更改时通知我? C#示例代码将非常好 法比奥 另外,我正在使用Oracle数据库广告通知不存在。只需每隔N分钟提取一次数据。目前,当某些内容发生更改时,没有办法让AD通知您-您只需每隔一段时间刷新一次即可。您可以设置一些内容来提取广告副本并将其与当前副本进行比较,只更新需要的内容/如果需要,

我想将我的用户数据库与active directory中的用户和组同步。 我的应用程序从AD读取对象并将其复制到数据库,但随着AD的更改,这些对象会过时

有没有办法让active directory在对象发生更改时通知我? C#示例代码将非常好

法比奥


另外,我正在使用Oracle数据库

广告通知不存在。只需每隔N分钟提取一次数据。

目前,当某些内容发生更改时,没有办法让AD通知您-您只需每隔一段时间刷新一次即可。您可以设置一些内容来提取广告副本并将其与当前副本进行比较,只更新需要的内容/如果需要,但在任何情况下都需要提取整个副本。

ActiveDirectory用户帐户具有“whenCreated”和“whenChanged”属性。如果您正在同步许多用户帐户,并且性能是一个问题,那么您可以查询ActiveDirectory并筛选出自上次成功同步以来已更改的记录

这些属性的语法是(结尾的大写Z是必填的,表示祖鲁时间,与GMT相同):

要搜索2009年6月30日当天或之后创建的所有用户,可以使用以下LDAP查询:

(&(objectClass=User)(whenChanged>=20090630000000.0Z))

执行同步的代码需要负责记录上次同步的时间。

执行同步的代码,而不是记录上次运行同步的时间,可以只使用表中最后一个事件的日期作为代理—这将使它获取自副本中最近一个事件以来的所有事件。
(&(objectClass=User)(whenChanged>=20090630000000.0Z))