| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 |
- import sys,getpass
- import ldap
- #l = ldap.open("localhost", 31001)
- l = ldap.open("marta.it.uq.edu.au")
- login_dn = "cn=root,ou=CSEE,o=UQ,c=AU"
- login_pw = getpass.getpass("Password for %s: " % login_dn)
- l.simple_bind_s(login_dn, login_pw)
- #
- # create a new sub organisation
- #
- try:
- dn = "ou=CSEE,o=UQ,c=AU"
- print "Adding", repr(dn)
- l.add_s(dn,
- [
- ("objectclass",["organizationalUnit"]),
- ("ou", ["CSEE"]),
- ("description", [
- "Department of Computer Science and Electrical Engineering"]),
- ]
- )
- except _ldap.LDAPError:
- pass
- #
- # create an entry for me
- #
- dn = "cn=David Leonard,ou=CSEE,o=UQ,c=AU"
- print "Updating", repr(dn)
- try:
- l.delete_s(dn)
- except:
- pass
- l.add_s(dn,
- [
- ("objectclass", ["organizationalPerson"]),
- ("sn", ["Leonard"]),
- ("cn", ["David Leonard"]),
- ("description", ["Ph.D. student"]),
- ("display-name", ["David Leonard"]),
- #("commonname", ["David Leonard"]),
- ("mail", ["david.leonard@csee.uq.edu.au"]),
- ("othermailbox", ["d@openbsd.org"]),
- ("givenname", ["David"]),
- ("surname", ["Leonard"]),
- ("seeAlso", ["http://www.csee.uq.edu.au/~leonard/"]),
- ("url", ["http://www.csee.uq.edu.au/~leonard/"]),
- #("homephone", []),
- #("fax", []),
- #("otherfacsimiletelephonenumber",[]),
- #("officefax", []),
- #("mobile", []),
- #("otherpager", []),
- #("officepager", []),
- #("pager", []),
- ("info", ["info"]),
- ("title", ["Mr"]),
- #("telephonenumber", []),
- ("l", ["Brisbane"]),
- ("st", ["Queensland"]),
- ("c", ["AU"]),
- ("co", ["co"]),
- ("o", ["UQ"]),
- ("ou", ["CSEE"]),
- #("homepostaladdress", []),
- #("postaladdress", []),
- #("streetaddress", []),
- #("street", []),
- ("department", ["CSEE"]),
- ("comment", ["comment"]),
- #("postalcode", []),
- ("physicaldeliveryofficename", ["Bldg 78, UQ, St Lucia"]),
- ("preferredDeliveryMethod", ["email"]),
- ("initials", ["DRL"]),
- ("conferenceinformation", ["MS-conferenceinformation"]),
- #("usercertificate", []),
- ("labeleduri", ["labeleduri"]),
- ("manager", ["cn=Jaga Indulska"]),
- ("reports", ["reports"]),
- ("jpegPhoto", [open("/www/leonard/leonard.jpg","r").read()]),
- ("uid", ["leonard"]),
- ("userPassword", [""])
- ])
- #
- # search beneath the CSEE/UQ/AU tree
- #
- res = l.search_s(
- "ou=CSEE, o=UQ, c=AU",
- _ldap.SCOPE_SUBTREE,
- "objectclass=*",
- )
- print res
- l.unbind()
|