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
したがって、2 番目の ldif エントリが失敗した場合、以前に行った変更をロールバックして、ldif 全体が正しい場合にのみエントリを作成したいと考えています。
私が探しているものとまったく同じような LDAP のトランザクションはないようです。今まで、非推奨になった Python の ldif パーサーしか見つかりませんでしたが、非推奨になったため、もう使用したくありません。それで、もしあなたが代替案を知っているなら、教えてください。
どんな助けでも大歓迎です