Seite 1 von 1

LDAP User anlegen

Verfasst: Montag 4. Juni 2007, 11:20
von Askella
Hallo,

ich versuche im LDAP (ADS) einen User/Gruppe anzulegen und scheitere immer an folgender Fehlermeldung:

OBJECT_CLASS_VIOLATION: {'info': '000020B4: UpdErr: DSID-03050BDC, problem 6002 (OBJ_CLASS_VIOLATION), data 0\n', 'desc': 'Object class violation'}

Die Anbindung an den Server funktioniert. User/Gruppen kann ich auch suchen und ändern.

Der User ist Domänenadmin und kann mittels MMC einen User/GRuppe anlegen

Allerdings klappt weder ein add_s noch ein remove_s :(

----

Code: Alles auswählen

import ldap
import ldap.modlist as modlist

def main():
    server = "adsserver.com"
    who = "cn=Admin, ou=Users, dc=com"
    cred = "secret"
    try:
        l = ldap.open(server)
        l.simple_bind_s(who, cred)
        print "bound to server\n"
    except ldap.LDAPError, error_message:
        print "NOT bound %s" % error_message
    my_add(l)
    l.unbind_s()

def my_add(l):
    dn="ou=Users, dc=com"

    attrs = {}
    attrs['objectclass'] = ['top','organizationalRole','simpleSecurityObject']
    attrs['cn'] = 'replica'
    attrs['userPassword'] = 'aDifferentSecret'
    attrs['description'] = 'User object for replication using slurpd'

    ldif = modlist.addModlist(attrs)
    l.add_s(dn,ldif)
---

Bei einer Googlesuche find ich einige Beispiele, die ich auch versucht hab, so direkt wie möglich zu übernehmen.

Vielleicht seh ich den Wald vor lauter Bäumen nicht :)

Danke schonmal
Askella

Edit by Gerold: Python-Code --> Siehe: http://www.python-forum.de/faq.php#21

Verfasst: Mittwoch 6. Juni 2007, 14:11
von Askella
Habs rausgefunden:)

---
dn="cn=replica,ou=Users, dc=com"

attrs = {}
attrs['objectclass'] = ['top','organizationalRole','simpleSecurityObject']
attrs['cn'] = 'replica'
attrs['userPassword'] = 'aDifferentSecret'
attrs['description'] = 'User object for replication using slurpd'
---

das CN im DN muss gleich sein, wie bei den attrs CN

:)