Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

LDAP Abfrage mit PHP liefert nicht alle Datensätze zurück

Frage Entwicklung PHP

Mitglied: Bayano

Bayano (Level 1) - Jetzt verbinden

26.06.2007, aktualisiert 13.07.2007, 6128 Aufrufe, 8 Kommentare

Hallo,

ich frage in einem PHP-Script alle Benutzer des LDAP ab, allerdings werden mir nicht alle Datensätze zurückgegeben, sondern nur ca. 1000. Es sind allerdings ca. 2500 User.

Kann man diese Begrenzung irgendwie heraufsetzen? Ich habe schon in der PHP.ini geschaut, da gibt es keine Grenze.
Ich weiss auch nicht wo man es sonst festlegen könnte. Vielleicht weiss ja von euch jemand weiter.

MFG
Mitglied: Dani
26.06.2007 um 16:26 Uhr
Hi Bayano,
na dann lass uns auch bitte dein Script sehen. Vielleicht ist dort ein logische Fehler begraben. Kommt öfters vor, als man denke. Eine Grenze habe ich noch nicht feststellen können!
Wie fragen auch ca. 15000 Einträge ab und hatten noch keine Probleme.


Gruß
Dani
Bitte warten ..
Mitglied: Bayano
27.06.2007 um 07:30 Uhr
OK, Hier das Script:

01.
<?php 
02.
                  // Base DN bezeichnet die oberste OU unter der die User zu finden sind.  
03.
                  $basedn = "CN=Users,DC=domain,DC=de"; 
04.
                  $server = "server.domain.de"; 
05.
                  // 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. 
06.
                  $username = "username"; 
07.
                  $password = "passwort"; 
08.
                  $ldap_port = "389"; 
09.
                  // LDAP Abfrage  
10.
                  $filter = "(&(objectClass=user)(cn=*))"; 
11.
?> 
12.
<?php 
13.
                  // Verbindung zum AD herstellen 
14.
                  $connectid = @ldap_connect($server)or die("Keine Verbindung zum LDAP server möglich."); 
15.
?> 
16.
<?php 
17.
                  // Ihr könnt dies auch nutzen, um z.B. Usernamen und Passwort z.B. fürs Intranet zu verifizieren. 
18.
                  $binding = @ldap_bind($connectid,$username,$password) or die("Fehler beim Anmelden des Benutzers."); 
19.
?> 
20.
<?php 
21.
                  // AD auslesen 
22.
                  $search = @ldap_search($connectid,$basedn,$filter); 
23.
                  $result = ldap_get_entries($connectid,$search); 
24.
?> 
25.
<?php 
26.
                  $anzahl = ldap_count_entries($connectid,$search); 
27.
                  for ($i=0; $i<$anzahl; $i++) { 
28.
                   
29.
                  echo "User: " .$result[$i]["cn"][0]. "<p>"; 
30.
                  echo "dn: " .$result[$i]["dn"]. "<p>"; 
31.
                   
32.
                  echo "Telefon: " .$result[$i]["telephonenumber"][0]. "<p>"; 
33.
                  echo "sAMAccountName: " .$result[$i]["samaccountname"][0]. "<p>"; 
34.
                                    
35.
                  echo "Mail: " .$result[$i]["mail"][0]. "<p>"; 
36.
                  echo "Description: " .$result[$i]["description"][0]. "<p>"; 
37.
                  echo "------------------<p>"; 
38.
         
39.
40.
echo "Ende <p>"; 
41.
?>
Bitte warten ..
Mitglied: BSG2000
10.07.2007 um 08:18 Uhr
Ich schreibe auch gerade an einer ähnlichen Geschichte. Wir wollen im Intranet den Login zu internen Seiten sparen, indem per LDAP der aktuell angemeldete User des Rechners ermittelt wird. Anmeldung erfolt im Übrigen über Samba Domain mit LDAP usw.

Gibt es da nen bestimmten Flag, oder die Möglichkeit anhand der IP den angemeldeten User zu ermitteln?

Bin leider noch LDAP Anfänger...
Bitte warten ..
Mitglied: Bayano
11.07.2007 um 07:49 Uhr
Ich glaube nicht, das das so ohne weiteres mit PHP funktioniert, da PHP ja Serverseitig abläuft. Ich habe den angemeldeten User schonmal mit VBScript in einer HTML-Seite ausgelesen, diese muss dann allerdings lokal auf den Rechner ausgeführt werden. Also nicht das was du haben willst.
Wenn jemand eine Lösung findet, würde es mich auch sehr interessieren.
Bitte warten ..
Mitglied: BSG2000
11.07.2007 um 16:10 Uhr
Danke für die Antwort.
Hatte gedacht ich frage lokal den angemeldeten User ab und gleiche dies mit der LDAP DB ab, bzw. schaue ich ob die IP oder MAC des angemeldeten Clienten in das LDAP Verzeichnis kommt. Vielleicht muss man dazu ein bissel Javascript einarbeiten, das hab ich noch nicht getestet, sollte aber funktionieren. Ein Script dazu hab ich bereits gesehen.
Ich hab leider im Moment einen Bind Fehler (Protokoll Fehler...) bei Ausführung von ldap_bind. Ich komm da schon seit Tagen nicht mehr richtig weiter. Naja, weitere Antworten würden uns/mich nat. freuen.
Bitte warten ..
Mitglied: Bayano
12.07.2007 um 08:28 Uhr
Hast du in der PHP.ini LDAP freigeschaltet (ich meine die Zeile extension=php_ldap.dll, dort das Semikolon wegnehmen). Weil ansonsten geht das nicht.
Bitte warten ..
Mitglied: BSG2000
12.07.2007 um 21:42 Uhr
Ja, aber leider habe ich zum WebServer keinen direkten Kontakt, werde aber morgen mal mit den SysAdmin sprechen. LDAP Admin geht aber auch, daher...

Das Problem liegt sicher woanders. Ich werd vielleicht mal die Scripte posten. Evtl. sieht ja jemand den Fehler.
Bitte warten ..
Mitglied: Dani
13.07.2007 um 16:53 Uhr
Hi Jungs, Mädels,
ihr habt doch sicher einen phpMyAdmin auf dem Server am laufen? Da gibt es eine Datei http://server/phpmyadmin/phpinfo.php. Dort werden alle Info's angezeigt. Sucht dort einfach mal nach dem Usernamen mit dem ihr gerade angemeldet seit (am Besten Domänenuser).


Grüße
Dani
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
PHP
MySQL-Abfrage mit php: Wert + true bzw. false (2)

Frage von tomolpi zum Thema PHP ...

PHP
gelöst PHP-MySQL - mysqli liefert einen Datensatz zu wenig (3)

Frage von Windows-Spieler zum Thema PHP ...

PHP
gelöst PHP Dropdownmenü mit SQL-Abfrage (4)

Frage von tobmes zum Thema PHP ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (19)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...