1
我想要做的(我認爲的)將是一件非常簡單的事情。我有一個LDAP條目,看起來像這樣(以LDIF格式):使用LDIF和Python刪除LDAP中的屬性
dn: cn=myorg,ou=teams,ou=groups,o=company,c=us
cn: myorg
objectClass: top
objectClass: CompanyTeams
objectClass: groupOfUniqueNames
owner: cn=john,ou=people,o=company,c=us
uniqueMember: cn=bob,ou=people,o=company,c=us
uniqueMember: cn=bill,ou=people,o=company,c=us
uniqueMember: cn=carol,ou=people,o=company,c=us
uniqueMember: cn=frank,ou=people,o=company,c=us
uniqueMember: cn=alice,ou=people,o=company,c=us
在我的代碼中,我有所有這些條目表示爲字典。我使用Python的LDIF編寫器將這些條目寫入適當的LDIF。導出整個事情很容易:
def dump_ldif(self):
writer = LDIFWriter(open('entrybackup.ldif', 'wb'))
writer.unparse(cn=myorg, self.all_the_teams.get_teamstr_by_name('{'objectClass': ['top', 'CompanyTeams', 'groupOfUniqueNames']'owner': ['cn=john,ou=people,o=company,c=us'], 'uniqueMember': ['uniqueMember: cn=bob,ou=people,o=company,c=us','uniqueMember: cn=bill,ou=people,o=company,c=us','uniqueMember: cn=carol,ou=people,o=company,c=us','uniqueMember: cn=frank,ou=people,o=company,c=us','uniqueMember: cn=alice,ou=people,o=company,c=us'], 'cn': ['myorg']}')
但你怎麼有LDIF輸出使用刪除/修改操作符?我有uniqueMember的名單,我要出門:
['cn=bob,ou=people,o=company,c=us', 'cn=bill,ou=people,o=company,c=us']
和(我相信)這是LDIF格式的最終目標,從我的名單拉:
dn: cn=myorg,ou=teams,ou=groups,o=company,c=us
changetype: modify
delete: uniqueMember
uniqueMember: cn=bob,ou=people,o=company,c=us
uniqueMember: cn=bill,ou=people,o=company,c=us
是不是有一些用Python(2.7)做這個簡單的方法?開始感到瘋狂。注意:我可以只做文本輸出/操作,但我想用LDIFWriter來寫這個輸出。我只想找到輸出'刪除'LDIF指令的語法。
**就像從上面的天使**非常感謝你!該解決方案效果很好。 – Chloe