无法使用Ldap3 Python从LDAP删除多个用户

时间:2019-05-13 20:18:27

标签: python-3.7 ldap3

我正在编写一个删除OU下所有用户的python脚本。 ou = people,cn = AdministrativeLdap,cn = Windchill_11.0,o = ptc。

我正在尝试通过执行以下代码来删除条目,但失败,并显示错误“由于具有从属条目而无法删除”,“引荐”:无,“类型”:“ delResponse”

有没有一种方法可以单独删除条目?

非常感谢!

from ldap3 import Server, Connection, ALL
s = Server('<IP-ADDRESS>', get_info=ALL)
print(s)
c = Connection(s, user='xxxxxx', password='xxxxxxxxxx')
c.bind() 
c.delete('ou=people,cn=AdministrativeLdap,cn=Windchill_11.0,o=ptc',force=True)
print(c.result)
c.unbind()

1 个答案:

答案 0 :(得分:0)

在LDAP中,如果包含其他对象,则无法删除该对象。 DELETE操作期望删除单个对象。您必须使用delete()删除每个对象。仅当容器对象不包含任何其他对象时,才能将其删除。

您还可以尝试使用Subtree Delete Control 来删除LDAP树的整个分支,但是必须检查ldap服务器是否支持它。