コード例 #1
0
ファイル: wrapper-play.py プロジェクト: gonicus/clacks
print "*" * 80

obj = ObjectProxy(u"cn=Eike Kunst,ou=people,dc=gonicus,dc=de")
obj.remove()

print "*" * 80
print "Extend or retract"
print "*" * 80


obj = ObjectProxy(u"cn=Claudia Mustermann,ou=people,dc=gonicus,dc=de")
et = obj.get_extension_types()
if 'PosixUser' in et and not et['PosixUser']:
    obj.extend('PosixUser')
    obj.homeDirectory = '/home/' + obj.uid
    obj.gidNumber = 4711
    obj.commit()
else:
    obj.retract('PosixUser')

print "*" * 80
print "Search"
print "*" * 80

for entry in ie.search(base=u"dc=gonicus,dc=de", scope=SCOPE_SUB, fltr={'sn': u'Mustermann'}, attrs=['_dn']):
    obj = ObjectProxy(entry['_dn'])
    print "* Found", obj.dn
    print "  Parent DN:", obj.get_parent_dn()
    print "  Type:", obj.get_base_type()
    print "  Extensions:", ", ".join(e for e, i in obj.get_extension_types().items() if i)
    print "  Given name:", obj.givenName