// LDAP filter setzen: Nur Kontakt- und Benutzer-Objekte sollen zurückgegeben werden
$filter = '(|(objectClass=user))'; //(objectClass=contact)
Irgendwie klappt das aber nicht, wenn ich aber den Pfad benutze
OU=Firma, DC=domäne,DC=loc
dann geht es, das problem dann ist einfach, dass ich alle objekte bekomme auch computer u.s.w. ich möchte aber nur die user haben die eben in der OU=_User sind.
Hallo Leute
// LDAP filter setzen: Nur Kontakt- und Benutzer-Objekte sollen zurückgegeben werden
$filter = '(|(objectClass=user))'; //(objectClass=contact)
Nimm mal
(&(objectCategory=person)(objectClass=user))
- Computer sind auch von der objectClass "user" - mit der Einschränkung "person" bekommst du nur die Bentzerobjekte.
hey super du hattest recht, nun habe ich aber noch immer ein kleines problämchen
und zwar möchte ich jetzt noch user filtern die nur in einer bestimmten Gruppe im AD vorhanden sind. Weil jetzt werden mir auch user angezeigt die z.B. nur Ressourcen sind, die aber als User angelegt wurden.
Nun ich habe eine OU die FirmenUser heist, und dort sind die User enthalten die ich nur gerne hätte...! wie kann ich das auch noch filtern?
Und weist du auch, wo ich die Bezeichnung der einzelnen Felder im AD finde, so wie du das mit dem objektClass=user geschrieben hast...
und zwar möchte ich jetzt noch user filtern die nur in einer bestimmten Gruppe im AD vorhanden sind. Weil jetzt werden mir auch user angezeigt die z.B. nur Ressourcen sind, die aber als User angelegt wurden.
Nun ich habe eine OU die FirmenUser heist, und dort sind die User enthalten die ich nur gerne hätte...! wie kann ich das auch noch filtern?
Indem du die Base-DN entsprechend änderst. Du kannst das nicht im Filter abfangen.
Und weist du auch, wo ich die Bezeichnung der einzelnen Felder im AD finde, so wie du das mit dem objektClass=user geschrieben hast...
Ein Tipp: Lade dir die SupportTools herunter - da sind ADSIEdit (nach Installation 'adsiedit.msc' aufrufen) und ldp enthalten. Mit denen kannst du Active Directory auf LDAP-Ebene browsen und dir Objekte und deren Attribute etwas genauer ansehen.
hallo, wenn ich die dn gleich auf die richtige OU leite bekomme ich fehlermeldungen und er kann den inhalt den er mit ldap holen geht, nicht mehr anzeigen...
der Fehler deutet darauf hin, dass die Daten nicht richtig an die Funktion übergeben werden. Sie erwartet ein Array, bekommt aber keins. Wenn es mit einem anderen Base-DN funktioniert, deutet das darauf hin, dass der hier verwendete DN nicht richtig ist und daher gar keine Daten zurückkommen. (Sollte deine Angabe im Posting richtig sein, ist das Semikolon am Ende falsch - das gehört nicht zum DN.)
Ach halt, jetzt sehe ich es erst richtig: Dein DN gibt keine OU an, sondern ein Objekt. Also anscheinend eine Gruppe. Eine Gruppe kannst du aber nicht auslesen wie eine OU, denn sie hat keine Unterobjekte. Die Mitglieder einer Gruppe stehen (als DNs) in deren Attribut "member".
Das wird dann aber natürlich nicht mit deinen vorhandenen PHP-Funktionen klappen, weil die ja von was anderem ausgehen.
bin neu auf php
Dann hast du dir vielleicht ein etwas arg komplexes Beispiel zum Einstieg ausgesucht. Und du solltest dir vielleicht noch mal ein paar LDAP-Grundlagen aneignen. Dazu könnte sich dies als Einstieg eignen: faq-o-matic.net LDAP-Grundlagen fr Active Directory