Top-Themen

Aktuelle Themen (A bis Z)

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

Login mit PHP über LDAP - Verbesserungsvorschläge

Mitglied: Lousek

Lousek (Level 2) - Jetzt verbinden

20.01.2008, aktualisiert 26.01.2008, 5790 Aufrufe, 2 Kommentare

Hallo Forum.

Also, wie der Titel es eigentlich schon sagt:

Habe es mit meinem jungen PHP-Wissen geschafft, ein Login über LDAP zum laufen zu bringen.

Jetzt ist das garantiert noch nicht brauchbar, nehm ich an, wäre über Verbesserungsvorschläge echt froh:

Habe die "Überprüfung" in eine Funktion geschrieben:
01.
function login_complete ($ldap_server) 
02.
03.
      if((isset($_COOKIE['cookie_username']) AND ($_COOKIE['cookie_passwort']))) { 
04.
                $username = $_COOKIE['cookie_username']; 
05.
                $passwort = $_COOKIE['cookie_passwort']; 
06.
                $check_positive = 1; 
07.
      } else { 
08.
               if((isset($_POST['username']) OR ($_POST['passwort']))) { 
09.
                         if(empty($_POST['username']) OR empty($_POST['passwort'])) { 
10.
                                  $array["login_complete"] = "Bitte fuellen Sie alle Felder aus. <a href='login.php'>Login</a><br>"; 
11.
                         } else {                              
12.
                                  if((isset($_POST['username']) AND ($_POST['passwort']))) { 
13.
                                            $username = $_POST['username']; 
14.
                                            $passwort = $_POST['passwort']; 
15.
                                            $check_positive = 1; 
16.
                                  }  
17.
18.
                } else { 
19.
                          $array["login_complete"] = "Sie sind nicht eingeloggt: ";       
20.
21.
22.
 
23.
 
24.
       
25.
            if($check_positive==1) { 
26.
      //----------------------------------------Login und Bind----------------------------------------       
27.
      if (!($connect=@ldap_connect($ldap_server))) { 
28.
            $array["login_complete"] = "Could not connect to ldap server<br>"; 
29.
      } else { 
30.
31.
       
32.
      // Needed for W2003 AD.. 
33.
      ldap_set_option($connect, LDAP_OPT_PROTOCOL_VERSION, 3); 
34.
      ldap_set_option($connect, LDAP_OPT_REFERRALS, 0); 
35.
       
36.
      if (!($bind=@ldap_bind($connect, $username, $passwort))) { 
37.
            $array["login_complete"] = "Login oder Passwort falsch. <a href='login.php'>Login</a><br>"; 
38.
      } else { 
39.
            setcookie("cookie_passwort", $passwort, time()+(60*60)); 
40.
            setcookie("cookie_username", $username, time()+(60*60)); 
41.
            $array["login_check"] = true; 
42.
      }          
43.
44.
            $array["username"] = $username; 
45.
            $array["passwort"] = $passwort; 
46.
            $array["connect"] = $connect; 
47.
            return $array; 
48.
}       
49.
 
Habe es mit Cookies gelöst, die Werte gebe ich in einem Array zurück, dass ich sie nachher z.B. auch für ldap_search benutzen kann.

An jedem "Seitenanfang" rufe ich dann diese Funktion auf, und "setzte" den Inhalt mit:
01.
$login = login_complete ($ldap_server); 
02.
$login_complete = $login["login_complete"]; 
03.
$username = $login["username"]; 
04.
$passwort = $login["passwort"]; 
05.
$login_check = $login["login_check"]; 
06.
$connect = $login["connect"]; 
07.
echo $login_complete; 
08.
 
09.
if($login_check==true) { 
10.
 
11.
//Inhalt wenn eingeloggt 
12.
 
13.
} else { 
14.
 
15.
//Inhalt wenn nicht eingeloggt 
16.
 
17.
}
Das if($login_check==true) kann ja irgendwo stehen.

Bin froh über alle Verbesserungsvorschläge.

Greetz, Lousek

[Edit masterG 20.01.2008 12:08]:
Ich hab mir erlaubt die codeschnippsel in einen Codeblock zu legen
Mitglied: Lousek
20.01.2008 um 21:34 Uhr
Jeps, danke, sry, habe sonst noch nicht code hier geschrieben? muss ich einfach <code type="php"> schreiben?

Lousek
Bitte warten ..
Mitglied: masterG
26.01.2008 um 11:19 Uhr
ganz genau

masterG
Bitte warten ..
Ähnliche Inhalte
PHP
PHP LDAP Login
gelöst Frage von schneerunzelPHP11 Kommentare

Hallo Zusammen, ich brauche eine Website auf der man sich mit seinen LDAP Account anmelden kann und dann eine ...

PHP
PHP LDAP Login Gruppen Abfrage
gelöst Frage von schneerunzelPHP7 Kommentare

Hallo Zusammen ich habe dieses PHP Script: Dieses Script stammt von einem anderen User aus diesem Forum Unschwer zu ...

Windows Server
LDAP in PHP
Frage von pipoomaWindows Server10 Kommentare

Halloo zusammen, ich habe Aufgabe von meinem Chef bekommt und zwar Single Sign-On. Wir entwickeln im Haus einen Portal ...

Linux Userverwaltung
Proxmox mit LDAP Login und openLDAP
Frage von spcvltLinux Userverwaltung

Hallo, ich habe einen openLDAP Server auf einem vServer installiert und würde gerne die LDAP Login funktion von Proxmox ...

Neue Wissensbeiträge
Linux Netzwerk

Installation eines Logservers mit Loganalyzer als Debian-VM auf Hyper-V

Anleitung von lcer00 vor 12 MinutenLinux Netzwerk

Zuerst sei auf den schönen Beitrag von aqui hier im Forum verwiesen, in dem die loganalyzer-installation bereits beschrieben ist: ...

Humor (lol)
Antennagate 2018
Information von magicteddy vor 12 MinutenHumor (lol)

Da haut der angekaute Elektronikhersteller die teuersten Geräte auf den Markt und bekommt anscheinend die Basics mal wieder nicht ...

Datenschutz

Die Datenkrake Google verlängert ihr Arme mal wieder ein wenig, automatische Anmeldung

Tipp von magicteddy vor 1 TagDatenschutz2 Kommentare

Benutzer mit einem Google Account und gespeicherten Zugangsdaten werden von chrome 69 automatisch bei Google angemeldet, natürlich alles zum ...

Verschlüsselung & Zertifikate
Meine Wissenssammlung zu Bitlocker
Erfahrungsbericht von DerWoWusste vor 2 TagenVerschlüsselung & Zertifikate3 Kommentare

Die Motivation für diesen Beitrag waren die vielen Posts rund um dieses Thema, die deutlich machen, wie viele Einzelaspekte ...

Heiß diskutierte Inhalte
E-Mail
Welche ist die beste E-Mail Groupware für die Zukunft?
Frage von ITCrowdSupporterE-Mail21 Kommentare

Guten Tag allerseits :) Ich möchte mich mit einer Frage heute mal an die Schwarmintelligenz wenden. Aktuell befasse ich ...

Windows Server
In-Place Upgrade von Windows Server 2008 R2 Datacenter zu Windows Server 2016 Datacenter (Zwischenschritt über 2012 R2)
gelöst Frage von TowerpleaseWindows Server16 Kommentare

Hallo Administratoren, Wir haben uns vor ein paar Monaten Windows Server 2016 Datacenter Lizenzen gekauft und wollen nun unsere ...

Windows 7
Mit gpedit gesetzte Richtlinien in rsop.msc nicht definiert und ausgegraut
gelöst Frage von 137006Windows 715 Kommentare

Hallo zusammen, anfangs verweise ich fairerweise daruf dass ich dieses Thema bereits im Forum angeschnitten habe, nachdem ich hier ...

Firewall
Wesyb Offline
Frage von DkuehlbornFirewall14 Kommentare

Hallo Kollegen, ein Kunde hat von Wesyb die Sicherheitslösung im Einsatz. Seit August scheint deren Internetseite nicht mehr verfügbar ...