我想将大量数据写入LDAP服务器(最好使用ldif),但我也希望如果出现错误,ldif中的每个插入/修改/删除都将被回滚。基本上,我需要一个函数,它从dict创建一个ldif,然后得到以下行为。
假设我有一个像这样的ldif:
dn: uid=user,cn=testing,dc=foobar #Existing and valid entry so it should work
changeType: modify
replace: sn
sn: Alfred
dn: uid=user2,cn=testing,dc=foobar #Non-existent entry so it should fail
changeType: modify #Now because this fails, the first change
replace: sn #should be rolled back...
sn: Carl
因此,如果第二个ldif条目失败,我想回滚之前所做的更改只创建条目,如果整个ldif是正确的。
似乎没有任何ldap的交易,这正是我正在寻找的。直到现在我才发现python的已弃用的ldif解析器...但由于它已被弃用,我不想再使用它了。所以,如果你们中任何人知道另一种选择,请告诉我。
非常感谢任何帮助