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 PHP Benutzer(AD) Authentifizierung Problem

Frage Entwicklung PHP

Mitglied: THT-Fsk45

THT-Fsk45 (Level 1) - Jetzt verbinden

08.05.2012, aktualisiert 18:37 Uhr, 4587 Aufrufe, 5 Kommentare

Hallo,

ich bin momentan am versuchen folgendes zu Realisieren: Eine Überprüfung der Richtigkeit der Benutzer Daten des AD's. Von der Logik her sollte es eigentlich laufen, nur tut es das nicht. Ich habe mich schon im Internet an verschiedensten stellen informiert bevor ich damit angefangen haben. Ich habe nun die Vermutung das ich irgendwas übersehen habe, bzw. dadurch das ich mich mit verschiedenen Quellen (mehr oder weniger) schlau gemacht habe mir irgendwas fehlt.

Kann mir da einer evtl. weiter helfen?

Aufbau:
- 2 Virtuelle Maschinen in einen internen Netzwerk: 1. Windows Microsoft Server 2008 R2 (Testversion da ich es momentan nur privat ausprobiere), 2. Windows XP SP3.
- Auf den Server: Active Directory, Active Directory Lightweight Directory Services (AD LDS),Instanzen - sind eingerichtet
- Auf der XP Maschine: Xampp
- Der html-Teil zum einlesen der Benutzer Daten:

01.
<html> 
02.
    <head> 
03.
    </head> 
04.
    <body> 
05.
          <h1>PHP - LADP Test </h1> 
06.
          <h2>Login:</h2> 
07.
          <p>Username:</p> 
08.
          <form method="post" action="login.php"> 
09.
                <input name="user" type="text" size="30" maxlength="30"></p> 
10.
                <p>Password:</p> 
11.
                <input name="pw" type="password" size="30" maxlength="40"></p> 
12.
                <input type="submit" name="Button" value="Anmelden"> 
13.
          </form> 
14.
    </body> 
15.
    </html>
- Der php-Teil:

01.
<?php 
02.
$user = $_POST[user]; 
03.
$passwd = $_POST[pw]; 
04.
 
05.
function ad_check ($user,$passwd)  
06.
 {  
07.
   $ldapserver = '[VMMASCHINE.test.Lokal]';  
08.
   $con=ldap_connect($ldapserver);  
09.
   if ($con)  
10.
    {  
11.
	  echo "Connected "; 
12.
	  $dat="CN=$user,CN=Users, DC=[VMMASCHINE], DC=[test], DC=[local]";  
13.
          $bind=@ldap_bind($con,$dat,$passwd); 
14.
	   
15.
       if ($bind)  
16.
        {  
17.
          echo "Angemeldet"; 
18.
		  return true; 
19.
        }  
20.
       else  
21.
        {  
22.
          echo "Nicht Angemeldet"; 
23.
		  return false;  
24.
        }  
25.
     }  
26.
27.
ad_check ($user, $passwd); 
28.
 ?>


So das dazu.

Das läuft soweit das einzige was nicht hinhaut ist das der Connect klappt aber auch mit den Richtigen Anmelde Daten ein "Connected Nicht Angemeldet" kommt.
Habe ich irgendwas übersehen bzw. irgendwas nicht eingerichtet oder woran kann es liegen?

Schon mal vielen dank für eure Hilfe und mit freundlichen Grüßen,

Fsk45
Mitglied: godlie
08.05.2012 um 12:50 Uhr
Hallo,

nimm mal das @ aus der Zeile 13 raus, dass unterdrückt dir nämlich die Fehlermeldungen.
Bitte warten ..
Mitglied: Dirmhirn
08.05.2012 um 13:24 Uhr
HI!

hast du dir schon einmal $user und $passwd ausgeben lassen?

http://adldap.sourceforge.net/ - ist ganz praktisch. macht aber Sinn wenn du dir zuerst die "Grundlagen" ansiehst - wie du es eh machst.

sg Dirm
Bitte warten ..
Mitglied: THT-Fsk45
08.05.2012 um 13:58 Uhr
Danke für die schnellen Antworten

ohne @ in Zeile 13 wird die Warnung:
"Warning: ldap_bind() [function.ldap-bind]: Unable to bind to server: Can't contact LDAP server in C:\xampp\xampp\htdocs\test\login.php on line 13"

kann es sein das es an xampp liegt? das ";" vorm "extension=php_ldap.dll" in der php.ini habe ich weg genommen um ldap zu aktivieren nur lag die in "xampp/php" in den Beschreibungen überall im Netz lag die Datei an anderer Stelle. Ich habe nämlich eine ältere xampp Version (2.5 (9. May, 2007)) weil die neueren irgendwie bei mir auf den XP-Maschine nicht funktionierten ... kann es daran liegen?

Die Variablen habe ich mir noch ausgeben lassen, jedoch die Variablen raus genommen und die Benutzer Daten direkt reingesetzt.
appopo Benutzer Daten, kann es sein das es an Sonderzeichen im Passwort liegen?

Mit freundlichen Grüßen Fsk45
Bitte warten ..
Mitglied: THT-Fsk45
10.05.2012 um 11:59 Uhr
Die Warnung sagt ja aus, dass das "binden" nicht klapp aber das Verbinden zum Server klapp ja da der Skript sonst nicht in den if-Bereich gehen würde wo das "binden" abläuft, kann es sein das es da an irgendwelchen Rechten liegen könnte?
Bitte warten ..
Mitglied: THT-Fsk45
15.05.2012 um 02:36 Uhr
So die Warung lag entweder an xampp oder an php 5.2.x ... ich nutze nun als "client" Ubuntu 12.04 mit einen apachen, php 5.3.10:
die Warung kommt nun nicht mehr allerdings klappt das anmelden immer noch nicht ...
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Batch & Shell
gelöst AD: alle Domänen Benutzer - Problem OU CN (2)

Frage von lupolo zum Thema Batch & Shell ...

Microsoft
AD Problem und VPN (4)

Frage von Yannosch zum Thema Microsoft ...

Windows Server
AD Bestimmten Benutzer (Hilfsadmin) nur Zugriff auf eine OU geben (1)

Frage von conym18 zum Thema Windows Server ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (18)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Windows Netzwerk
Windows 10 RDP geht nicht (18)

Frage von Fiasko zum Thema Windows Netzwerk ...

Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...