我遇到需要从DirX目录服务器(LDAP)查询修改的情况。 在更常见的产品中,例如OpenDS,Oracle DSEE等,通常会有一些可以查询的 changelog ,它会为您提供在该服务器中执行的一系列修改。
不幸的是,基本上没有在线信息可以帮助我解决这个问题。 如果DirX提供类似的东西,任何对DirX有所了解的人都可以提供一些提示吗?
答案 0 :(得分:1)
DirX没有提供您正在寻找的cn = changelog节点/子树。
DirX更改日志写为LDIF更改文件。这些文件可以简单地转储到文件系统以供以后使用/处理,或者在编写它们时,您可以调用任何您喜欢的应用程序/脚本来对LDIF数据执行某些操作。例如,您可以将ldif数据传递给ldapmodify,并将DirX中的每个更改实时发送到另一个ldap服务器。您可以将数据传输到自定义应用程序或脚本,以便为某些类型的操作过滤它,并将所需信息写入sql db或所需的任何输出。这里确实没有任何限制。你只需要阅读LDIF。
LDIF数据可以在更改时写入(并通过管道传输到您的应用程序/脚本)以处理实时要求,或者按计划基于批处理流程。
顺便说一句,我已经看到了使用LDIF更改日志数据在DirX中创建cn = changelog节点(就像您在Oracle DSEE上找到的那样)的实现。即,当LDIF数据在更改时写入时,数据将通过管道传输到脚本,该脚本在cn = changelog下创建您期望的条目。显然,这样做是为了为Oracle DSEE用户提供更熟悉的更改日志功能。
答案 1 :(得分:0)
检查DirX是否支持persistent search control。如果是,则提供更改通知,但不提供诸如UnboundID更改日志或DSEE的retro-changelog之类的历史记录。