ldap3 python 修改用过滤器替换对象

ldap3 python modify replace an object with filter

应用ldapmodify时如何过滤?

例如:这是我的用户对象的样子:

dn: mail=abc@d.com,ou=users,dc=dev,dc=com sn: po givenName: abc pin: 1234 mail: abc@d.com telephoneNumber: 11234567890 enabled: FALSE city: city cn: abc@d.com o: org

我想修改这个用户所在的城市,如果他的组织是 org.我怎样才能应用这样的过滤器?

我正在使用 ldap3,我需要使用控件吗?

您需要发送 断言控制 以及您的修改操作(参见 RFC 4528)。基本上,该控件包含一个必须匹配的过滤器。

我在我的 web2ldap 中使用这个控件来防止并发写入做任何坏事。

我怀疑 ldap3 模块是否支持开箱即用。

进一步说明:

  • 并非所有 LDAP 服务器都支持此控件。
  • 支持此控件的 LDAP 服务器实现中存在细微错误。