php.de

Zurück   php.de > php.de Intern > Beitragsarchiv > Trash

 
 
LinkBack Themen-Optionen
Alt 18.11.2009, 23:14  
Neuer Benutzer
 
Registriert seit: 18.11.2009
Beiträge: 26
PHP-Kenntnisse:
Anfänger
jared566 befindet sich auf einem aufstrebenden Ast
Standard Auslesen eines AD's mit PHP

Hallo Leute,

erstmal: ich bin neu hier ^^

so dann auch schon zu meinem Problem:

Ich möchte mein Active Directory mit PHP auslesen und Passwörter zurücksetzen (auf ein Standard PW), sowie User sperren / entsperren.

als "Grundlage" habe ich folgenden Quelltext:

PHP-Code:
// Base DN bezeichnet die oberste OU unter der die User zu finden sind. 
$basedn "ou=User,dc=test,dc=local";
$server "ldap://192.168.178.11";

// da der Zugriff auch ohne Anmeldung möglich sein soll, hab ich einen extra User im AD angelegt, um mich mit dem Server zu verbinden.

$username "Administrator";
$password "";

$ldap_port "389";

// LDAP Abfrage 
// ich hab einen erweiterten Filter genommen, da ich nicht nur die User des AD haben wollte, sondern auch Kontakteinträge.
// $filter = "(&(objectClass=user)(objectCategory=person)(cn=*))";
$filter "(&(|(objectClass=user)(objectClass=contact))(objectCategory=person)(cn=*))";

// Verbindung zum AD herstellen
$connectid = @ldap_connect($server);

// Ihr könnt dies auch nutzen, um z.B. Usernamen und Passwort z.B. fürs Intranet zu verifizieren.
$binding = @ldap_bind($connectid,$username,$password) or die("Fehler");


// AD auslesen
$search = @ldap_search($connectid,$basedn,$filter);
$result = @ldap_get_entries($connectid,$sr);

// in $result sind nun alle User mit allen Informationen enthalten. 
1. Wie kann ich nun $result so auslesen, das ich nur die Leute angezeigt bekomme (in einer Liste), die gesperrt sind?
2. Wie kann ich $result so auslesen, das mir alle Anmeldenamen der User + Vor und Nachname angezeigt werden?
3. Wie kann ich Werte (Passwort und Account Sperren / entsperren) verändern?

Freund Google habe ich schon befragt, aber nur diesen Quelltext gefunden und bei php.net gibt es ja noch eine ganze Menge weitere LDAP Befehle, mit denen ich mich aber nicht auskenne und auch die erklärung nicht Verstehe.

Hintergrund ist ein Projekt, mit dem ich über eine Website Benutzerkonten sperren / entsperren kann, sowie das Passwort auf ein Standardpasswort zurückzusetzen, um den Aufwand zu vermeiden immer in das AD zu gehen.

Später werden auch noch ein Functionen hinzugefügt, dass man Benutzer auch noch anlegen kann.

Wäre schön wenn mir wer helfen kann =)

Mit freundlichen Grüßen

Jared

Geändert von jared566 (18.11.2009 um 23:18 Uhr).
jared566 ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 19.11.2009, 08:17  
Erfahrener Benutzer
 
Registriert seit: 25.09.2009
Beiträge: 2.044
PHP-Kenntnisse:
Fortgeschritten
BlackScorp wird schon bald berühmt werdenBlackScorp wird schon bald berühmt werden
Standard

Ein kleiner Blick auf PHP: ldap_get_entries - Manual sagt mir dass die funktion ldap_get_entries ein Array zurückliefert bei dir ist jedoch der zweite parameter falsch.

das $sr muss in diesem quellcode $search lauten änder mal die letzte Zeile so um:

PHP-Code:
$search = @ldap_search($connectid,$basedn,$filter);
$result = @ldap_get_entries($connectid,$search);
print_r($result); 
nun kriegst du alle möglichen array elemente raus, die dein AD dir zurückliefert
__________________
Mein kleines Projekt
-Cruel Online-
5 von 3 Leuten können kein Bruchrechnen
BlackScorp ist offline  
Alt 19.11.2009, 09:11  
Neuer Benutzer
 
Registriert seit: 18.11.2009
Beiträge: 26
PHP-Kenntnisse:
Anfänger
jared566 befindet sich auf einem aufstrebenden Ast
Standard

dafür schonmal danke =)
werde es nachher gleich mal ausprobieren :P

brauche ich für ldap_add und ldap_modify zwingend ein Array? oder geht das auch anderst?

Wie lauten bei modify und auch beim auslesen die werte, um einen user zu sperren oder zu entsperren (bzw auslesen ob oder ob nicht gesperrt?

Mit freundlichen Grüßen

Jared
jared566 ist offline  
Alt 19.11.2009, 16:48  
Neuer Benutzer
 
Registriert seit: 18.11.2009
Beiträge: 26
PHP-Kenntnisse:
Anfänger
jared566 befindet sich auf einem aufstrebenden Ast
Standard

habe den Code nochmal ausprobiert, mit der kleinen umstellung.. leider bekomm ich keine ausgabe. Oder muss ich erst das Array auslesen? Wenn ja wie mach ich das? Mit Arrays habe ich so meine Probleme, da hilft auch nachlesen nichts ^^
jared566 ist offline  
Alt 19.11.2009, 17:18  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 34.241
PHP-Kenntnisse:
Fortgeschritten
nikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz sein
Standard

Zitat:
Mit Arrays habe ich so meine Probleme, da hilft auch nachlesen nichts ^^
Das ist inakzeptabel.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline  
Alt 19.11.2009, 17:26  
Neuer Benutzer
 
Registriert seit: 18.11.2009
Beiträge: 26
PHP-Kenntnisse:
Anfänger
jared566 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von nikosch Beitrag anzeigen
Das ist inakzeptabel.
Warum soll das inakzeptabel sein? Nur weil ich mich nicht mit Arrays auskenne und es auch nicht lernen kann, weil ich das Prinzip nicht verstehe?

Ich arbeite nunmal nicht gerne mit Arrays, aus dem oben genannten grund... Ist das denn so schlimm?

Du magst auch nicht alles können / verstehen.. Bei dir gibt es sicherlich auch (wenn auch nicht im PHP Bereich) Dinge, die du einfach nicht vertehen kannst, auch wenn du es versuchst..

Naja aber wenn du meinst, dann kann ichs auch nicht ändern. Ist schließlich deine Entscheidung so über mich zu denken.

Mit freundlichen Grüßen

Jared
jared566 ist offline  
Alt 19.11.2009, 17:31  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 34.241
PHP-Kenntnisse:
Fortgeschritten
nikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz sein
Standard

Zitat:
Ist das denn so schlimm?
Ja, das ist schlimm.
Zitat:
Du magst auch nicht alles können / verstehen.. Bei dir gibt es sicherlich auch (wenn auch nicht im PHP Bereich) Dinge, die du einfach nicht vertehen kannst, auch wenn du es versuchst..
Interessante Ferndiagnose. Ich versuche aber wenigstens, das zu verstehen und verschließe mich nicht davor. Nach dem Motto kann ich leider nicht nutzen, weil ich es nicht verstehe. Arrays sind grundlegende Konzepte in vielen Programmiersprachen. Ohne kommst Du nicht weit. Da brauchst Du mit Active Direcotories erst gar nicht anfangen.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline  
Alt 19.11.2009, 17:52  
Neuer Benutzer
 
Registriert seit: 18.11.2009
Beiträge: 26
PHP-Kenntnisse:
Anfänger
jared566 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von nikosch Beitrag anzeigen
Interessante Ferndiagnose. Ich versuche aber wenigstens, das zu verstehen und verschließe mich nicht davor. Nach dem Motto kann ich leider nicht nutzen, weil ich es nicht verstehe
Das ist eine Interessante Ferndiagnose deinerseits. Woher willst du denn wissen, das ich es garnicht erst versucht habe? Du hast keine Ahung wie lange ich schon vor mehrdimensionalen Arrays (einfach mögen noch gehen) saß, dann aber letztenendes doch nicht weitergekommen bin...
Zudem verschließe ich mich nicht davor, nur versteh ich es einfach nicht.

zb. angewand auf das AD:

die Variable $result liefert ein Mehrdimensionales Array zurück. In diesem Array stehen allerhand Informationen drin. Aber wie ich das Array ansprechen kann, also mit welchen Schlüsselwörtern, ist mir immer noch vollkommen schleierhaft.

Genauso wie eine Schleife zum auslesen für ein mehrdimensionales Array.. die bekomme ich auch beim besten willen nicht hin.
Eindimensionale Array mögen ja noch gehen, da ist die Schleife ja auch noch relativ einfach.
jared566 ist offline  
Alt 19.11.2009, 20:35  
Neuer Benutzer
 
Registriert seit: 18.11.2009
Beiträge: 26
PHP-Kenntnisse:
Anfänger
jared566 befindet sich auf einem aufstrebenden Ast
Standard

Okey ich konnte den Fehler schonmal eingrenzen. Es liegt nicht an einem Array auslesen (vllt später noch aber im moment nicht), sondern daran, das @ldap_search false zurückgibt und ich weiß nicht warum. Eine Verbindung zum Server hat er, Bind hat er auch, nur @ldap_search klappt nicht.

Weiß jemand weiter?

Meine Ordnerstruktur in der Domäne: in der OU=User befinden sich 2 User:
Administrator und
admin

Diese OU liegt direkt unter test.local(der Domäne)

diese Beiden sollen wenn die Page fertig ist, auf einer Seite anzeigt werden.
jared566 ist offline  
Alt 19.11.2009, 20:55  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 34.241
PHP-Kenntnisse:
Fortgeschritten
nikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz sein
Standard

Kleiner Tipp: Wenn man die Fehlerunterdrückung entfernt, sieht man manchmal auch auftretende Fehler..

Was solln der Müll: PHP und ldap Probleme - administrator ?
Bitte beachten: Anmerkungen zu Crosspostings
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline  
 


Themen-Optionen

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] preparedStatement auslesen funktioniert nicht ?! Raidri PHP Tipps 2009 11 02.11.2009 09:21
[Erledigt] Anzahl der Zeilen auslesen ( MySQL ) errox Datenbanken 13 18.02.2009 16:07
Scriptsuche Formular auslesen und verschicken Atsinganos Scriptbörse 8 21.01.2009 12:54
Ordner auslesen und während des auslesen sortieren Dooki PHP Tipps 2008 6 14.05.2008 17:50
Vom Browser verschickte Daten auslesen und anzeigen? andy32 PHP Tipps 2008 3 22.08.2007 18:33
gelöst: Tabelle auslesen -> Gleiche Einträge nur 1 Mal Datenbanken 3 31.03.2006 01:44
Textdatei auslesen, aber ohne Komentare HSFighter PHP Tipps 2006 31 23.02.2006 10:07
Cookies auslesen HSFighter PHP Tipps 2007 2 19.11.2005 14:56
[Erledigt] bestimmte ID's auslesen als array PHP Tipps 2007 2 31.10.2005 20:23
Daten eintragen und auslesen Rettungsdackel Datenbanken 0 14.09.2005 16:29
alle Verzeichnisse sortiert auslesen PHP Tipps 2005-2 7 17.07.2005 10:20
auslesen und nochmals auslesen?! $$$ ThiKool $$$ PHP Tipps 2005 23 10.03.2005 19:43
Klassen auslesen PHP Tipps 2007 8 10.01.2005 07:07
[Erledigt] Auslesen von Text incl. " aus Textfeld PHP Tipps 2007 4 04.01.2005 13:30
[Erledigt] Daten von anderer Homepage auslesen PHP Tipps 2004-2 5 02.12.2004 18:49

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php ldap benutzerdaten auslesen, php ldap user gesperrt, ad mit php auslesen, php benutzer ad auslesen, adinformationen aus dem browser auslesen, php ldap gesperrt, php ldap_bind anmeldename kennwort, ldap_search auslesen, ldap_add bentzer sperren, domäne \user passwort auslesen\, php aduser auslesen, ldap php gesperrter user abfragen, php ldap auslesen ob benutzer gesperrt ist, als administrator ad user passwort auslesen, php ad informationen auslesen, quelltext passwort auslesen, ldap_search flase, langes array auslesen, user informationen per php auslesen, schleife zum auslesen von ad benutzern

Alle Zeitangaben in WEZ +1. Es ist jetzt 04:03 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum