Active directory 由于复制延迟,Active Directory查找失败

Active directory 由于复制延迟,Active Directory查找失败,active-directory,ldap,replication,Active Directory,Ldap,Replication,我们有一个第三方工具,用于创建广告对象(用户和组)。该工具使用ADSI创建对象,我们没有也不能指定它将写入的DC。因此,它可能会在今天和明天分别向DC1和DC2写信。不过,一切都是复制的,所以不用担心 我们的问题是创建组的过程如下所示: 问题组创建到第三方工具 如果成功,请通过LDAP调用(这是一个Java应用程序)查找AD中的组对象以获取SID。(第三方工具不返回此信息) 问题是Java LDAP调用在执行查找时确实指定了DC。假设Java设置为从DC1读取。如果第三方工具写入DC2,则对DC

我们有一个第三方工具,用于创建广告对象(用户和组)。该工具使用ADSI创建对象,我们没有也不能指定它将写入的DC。因此,它可能会在今天和明天分别向DC1和DC2写信。不过,一切都是复制的,所以不用担心

我们的问题是创建组的过程如下所示:

  • 问题组创建到第三方工具
  • 如果成功,请通过LDAP调用(这是一个Java应用程序)查找AD中的组对象以获取SID。(第三方工具不返回此信息)
  • 问题是Java LDAP调用在执行查找时确实指定了DC。假设Java设置为从DC1读取。如果第三方工具写入DC2,则对DC1的java查找无法找到该组

    AD复制延迟很小,因此如果我们在创建和查找之间添加15秒的延迟,那么它可以工作,但有点难看


    此外,我还尝试从Java查询所有DC。这对于上面的示例是有效的,但是当我们更新用户或组的属性并立即尝试读回它时,它仍然有相同的基本问题。延迟似乎是唯一有效的方法,但似乎应该有比这更好的方法。

    3d party工具不应以这种方式用于更新目录。最终一致性模型防止结果以任何有意义的方式进行预测。正确的步骤是使用附加的添加、修改、删除或修改DN请求在应用程序代码中执行更新(添加/修改/删除)。此方法由标准流程定义,如果更新有效,则保证可预测。请仔细阅读“”及其附带的信息