Ankündigung

Einklappen
Keine Ankündigung bisher.

LDAP + php, User anlegen

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • LDAP + php, User anlegen

    Hallo ich möchte für einen Server eine kleine Benutzerverwaltung schreiben, welche das anlegen von neuen Benutzern im LDAP-Baum vereinfachen bzw standardisieren soll.

    ein LDAP Eintrag sieht zB so aus:
    HTML-Code:
               [count] => 1
                [0] => Array
                    (
                        [sn] => Array
                            (
                                [count] => 1
                                [0] => testname
                            )
    
                        [0] => sn
                        [givenname] => Array
                            (
                                [count] => 1
                                [0] => testvorname
                            )
    
                        [1] => givenname
                        [uid] => Array
                            (
                                [count] => 1
                                [0] => test
                            )
    
                        [2] => uid
                        [cn] => Array
                            (
                                [count] => 1
                                [0] => testvorname testname
                            )
    
                        [3] => cn
                        [mail] => Array
                            (
                                [count] => 1
                                [0] => test@r***r.de
                            )
    
                        [4] => mail
                        [gosamailserver] => Array
                            (
                                [count] => 1
                                [0] => r***r.de
                            )
    
                        [5] => gosamailserver
                        [gosamailquota] => Array
                            (
                                [count] => 1
                                [0] => 0
                            )
    
                        [6] => gosamailquota
                        [gosamaildeliverymode] => Array
                            (
                                [count] => 1
                                [0] => [L]
                            )
    
                        [7] => gosamaildeliverymode
                        [gosaspamsortlevel] => Array
                            (
                                [count] => 1
                                [0] => 0
                            )
    
                        [8] => gosaspamsortlevel
                        [gosaspammailbox] => Array
                            (
                                [count] => 1
                                [0] => INBOX
                            )
    
                        [9] => gosaspammailbox
                        [objectclass] => Array
                            (
                                [count] => 6
                                [0] => gosaMailAccount
                                [1] => top
                                [2] => person
                                [3] => organizationalPerson
                                [4] => inetOrgPerson
                                [5] => gosaAccount
                            )
    
                        [10] => objectclass
                        [lmpassword] => Array
                            (
                                [count] => 1
                                [0] => CCF9155E3E7DB453AAD3B435B51404EE
                            )
    
                        [11] => lmpassword
                        [ntpassword] => Array
                            (
                                [count] => 1
                                [0] => 3DBDE697D71690A769204BEB12283678
                            )
    
                        [12] => ntpassword
                        [pwdlastset] => Array
                            (
                                [count] => 1
                                [0] => 1209402130
                            )
    
                        [13] => pwdlastset
                        [count] => 14
                        [dn] => uid=test,ou=people,dc=r***r,dc=de
                    )
    ich habe mir auch verschiedenen Beträgen und Seiten
    folgendes zusammen gebastelt:
    PHP-Code:
    $ds ldap_connect("localhost") or die ("Verbindung konnte nicht aufgebaut werden");
    ldap_set_option($ds,LDAP_OPT_PROTOCOL_VERSION,3);
    ldap_bind($ds,'uid=awi,ou=people,dc=r***r,dc=de','***');
    $user["sn"] ="meier";
    $user["givename"] ="michael";
    $user["cn"] ="michael meier";
    $user["uid"] ="michael.meier";
    $user["mail"] ="michael.meier@r***r.de";
    $user["DC"] ="de";
    $user["uid"] ="michaelmeier";
    $user["objectClass"]="gosaMailAccount";
    $user["gosaMailDeliveryMode"]="[L]";
    $user["gosaMailServer"]="r***r.de";
    $user["userPassword"]="123";
    $user["pwdLastSet"]=time();
    $dn ="uid=michael.meier,ou=people,dc=r***r,dc=de";
    ldap_add($ds$dn$user);
    ldap_close($ds); 
    Im Browser steht dann
    [WARN]Warning: ldap_add() [function.ldap-add]: Add: Undefined attribute type in /var/www/bv.r***r.de/test.php on line 19[/WARN]

    das aber versteh ich nicht.
    Im phpLDAPadmin hab ich herausbekommen, dass zu der ObjectClass gosaMailAccount noch
    gosaMailDeliveryMode, gosaMailServer und mail gehört.
    Nächste Frage ist wie lege ich das Passwort fest? In einem LDAP-dump habe ich gesehen, dass das Passwort im Klartext (hat was mit dem Mailserver zu tun) in dem Feld userPassword steht.
    Kann ich das einfach da rein schreiben?

    Wo liegt mein Fehler, warum frisst der das nicht?


    Gruß Achim


  • #2
    hat denn keiner eine Idee?

    Kommentar

    Lädt...
    X