php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2009

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 14.01.2009, 18:21  
Benutzer
 
Registriert seit: 17.12.2008
Beiträge: 63
matze-pe befindet sich auf einem aufstrebenden Ast
Standard Angemeldeten User aus dem Active Directory über LDAP auslesen

Hallo an alle,
ich möchte ein Seite erstellen, die mir den gerade angemeldeteten User aus dem Active Directory ausliest.

Ich habe bereits ein Skript, das eine Überprüfung aus einem Anmeldeformular mit dem gerade angemeldeten User macht, das wäre hier:

( Das HTML Formular login.php habe ich jetzt nicht mit angehangen)

PHP-Code:
<?php
$ldap_server 
"ldap://192.168.1.3";
$login login_complete ($ldap_server);
$login_complete $login["login_complete"];
$username $login["username"];
$passwort $login["passwort"];
$login_check $login["login_check"];
$connect $login["connect"];
echo 
$login_complete;

if(
$login_check==true) {

echo 
"Du bist: $username";

} else {

echo 
"Kein Zugang";

}



function 
login_complete ($ldap_server)
{
      if((isset(
$_COOKIE['cookie_username']) AND ($_COOKIE['cookie_passwort']))) {
                
$username $_COOKIE['cookie_username'];
                
$passwort $_COOKIE['cookie_passwort'];
                
$check_positive 1;
      } else {
               if((isset(
$_POST['username']) OR ($_POST['passwort']))) {
                         if(empty(
$_POST['username']) OR empty($_POST['passwort'])) {
                                  
$array["login_complete"] = "Bitte fuellen Sie alle Felder aus. <a href='login.php'>Login</a><br>";
                         } else {                             
                                  if((isset(
$_POST['username']) AND ($_POST['passwort']))) {
                                            
$username $_POST['username'];
                                            
$passwort $_POST['passwort'];
                                            
$check_positive 1;
                                  } 
                          }
                } else {
                          
$array["login_complete"] = "Sie sind nicht eingeloggt: ";      
                }
      }


      
            if(
$check_positive==1) {
      
//----------------------------------------Login und Bind----------------------------------------      
      
if (!($connect=@ldap_connect($ldap_server))) {
            
$array["login_complete"] = "Could not connect to ldap server<br>";
      } else {
      }
      
      
// Needed for W2003 AD..
      
ldap_set_option($connectLDAP_OPT_PROTOCOL_VERSION3);
      
ldap_set_option($connectLDAP_OPT_REFERRALS0);
      
      if (!(
$bind=@ldap_bind($connect$username$passwort))) {
            
$array["login_complete"] = "Login oder Passwort falsch. <a href='login.php'>Login</a><br>";
      } else {
            
setcookie("cookie_passwort"$passworttime()+(60*60));
            
setcookie("cookie_username"$usernametime()+(60*60));
            
$array["login_check"] = true;
      }         
}
            
$array["username"] = $username;
            
$array["passwort"] = $passwort;
            
$array["connect"] = $connect;
            return 
$array;
}      

?>

Wie kann ich das umprogrammieren, sodass er einfach nur aus dem Active Directory den User anzeigt, der gerade auf der Seite ist?


Vielen Dank

mfg
Matze
matze-pe ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 14.01.2009, 18:34  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Da ist dann erstmal die Frage, wie Du an die erforderlichen Daten herankommen willst/kannst.
Der IE kann so eingestellt sein, dass die Benutzerkennung automatisch mitgesendet wird. Den Firefox kann man wohl (soweit ich weiß) auch irgendwie so einstellen.
Aber wenn Dir diese Daten fehlen, was willst Du dann abfragen?
David ist offline  
Alt 14.01.2009, 19:10  
Benutzer
 
Registriert seit: 17.12.2008
Beiträge: 63
matze-pe befindet sich auf einem aufstrebenden Ast
Standard

Werd ich über den IE machen
matze-pe ist offline  
Alt 14.01.2009, 19:17  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Und welchen Webserver verwendest Du? In der Kombination IIS/IE bekommst Du das sozusagen frei Haus geliefert.
David ist offline  
Alt 14.01.2009, 19:29  
Benutzer
 
Registriert seit: 17.12.2008
Beiträge: 63
matze-pe befindet sich auf einem aufstrebenden Ast
Standard

Ich benutze den XAMPP 1.6, als Webserver

Das wäre große Klasse, wenn das klappt
matze-pe ist offline  
Alt 14.01.2009, 19:32  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Vielleicht hilft Dir dann Accessing NTLM secured resources with PHP - ThinkPHP /dev/blog weiter.
David ist offline  
Alt 15.01.2009, 03:21  
Neuer Benutzer
 
Registriert seit: 09.12.2008
Beiträge: 13
sofalord befindet sich auf einem aufstrebenden Ast
Standard

wie auch schon im anderen thread gesagt :

ldap_bind($connect, $username, $passwort

$username setzt sich zusammen aus :

username@domainname

sonst geht der bind auf dem ldap server nicht...

edit : such mal nach dem ldap bind hier im forum, in dem anderen thread gabs eine ausführliche erklärung
sofalord ist offline  
Alt 15.01.2009, 16:15  
Benutzer
 
Registriert seit: 17.12.2008
Beiträge: 63
matze-pe befindet sich auf einem aufstrebenden Ast
Standard

Hallo,
danke für dein Tipp.

Ich hab das mal ausprobiert, dann müsste ja der $username wie folgt ausgegeben werden Administrator@RAWOB

PHP-Code:
<?php
 
//domain infos
$server "ldap://192.168.1.3";

 
 
// connect to server
 
if (!($connect=@ldap_connect($server)))
 {
      die(
"Keine Verbindung");
 }
 

 
 
// bind to server
 
if (!($bind=@ldap_bind($connect$username$passwort))) 
 {
     die(
"Fehler: bind");
 }
 
 echo 
"Hallo: $username";
 
 
 
?>
Klappt so aber nicht, der $username wird nicht ausgegeben.

P.S. mit der SuFu bin ich nur auf einem anderen gestoßen, der aber auch ein Login Skript vorab hat.

Geändert von matze-pe (15.01.2009 um 16:19 Uhr).
matze-pe ist offline  
Alt 18.01.2009, 13:48  
Benutzer
 
Registriert seit: 17.12.2008
Beiträge: 63
matze-pe befindet sich auf einem aufstrebenden Ast
Standard

Mache ich hier noch was falsch, tüffel schon seit einer Woche dran


Ist meine Syntax falsch, er soll mir doch nur meinen Benutzernamen ausgeben



Schönen Sonntag an alle


Gruß
Matze
matze-pe ist offline  
Alt 18.01.2009, 14:07  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Vielleicht sollten wir nochmal klären, was das Problem ist.

[] generell das ldap_bind
[] allgemein der Test auf authentifizierten Benutzer
[] Authentifizierung ohne vorgeschaltetes (manuelles) Login

Bitte Zutreffendes ankreuzen.
David ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

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
domain auslesen die der user im browser eingegeben hat PHP Tipps 2004 5 17.12.2009 11:10
Auto login mit PHP über LDAP DeinOpa PHP-Fortgeschrittene 1 06.02.2009 15:48
Login mittels Active Directory ( LDAP ) matze-pe PHP Tipps 2009 16 13.01.2009 16:10
Frage zu LDAP Frage (Active Directory) FRAD PHP Tipps 2008 0 01.10.2008 16:11
User einer OU mit LDAP auslesen InTeNsO PHP Tipps 2008 2 29.09.2008 13:40
[Erledigt] Benutzer-Authentifizierung über LDAP bueth PHP-Fortgeschrittene 12 31.07.2008 15:27
LDAP + php, neue User anlegen und ändern bender.ac PHP-Fortgeschrittene 3 07.05.2008 20:36
LDAP + php, User anlegen bender.ac PHP Tipps 2008 1 29.04.2008 19:31
Mit PHP eine Accessdatenbank über VPN auslesen? pino PHP Tipps 2005-2 0 09.09.2005 12:10
suche string zum auslesen des vom user verwendeten bs PHP Tipps 2005-2 12 24.07.2005 13:17
Nur zeilen der letzten x stunden über timestamp auslesen Datenbanken 2 20.06.2005 18:12
IP Adresse auslesen über php tennessee PHP Tipps 2005 10 17.05.2005 16:46
Active Directory Ldap Queries über 1000 Entries PHP Tipps 2005 0 27.01.2005 14:27
[Erledigt] User Verzeichnis auslesen PHP-Fortgeschrittene 5 29.10.2004 00:48
user aus dem ie auslesen PHP-Fortgeschrittene 6 16.08.2004 14:36

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
ldap username, php angemeldeter user auslesen, active directory angemeldete benutzer, php angemeldeter benutzer, php active directory auslesen, ldap user, active directory auslesen php, ad angemeldete benutzer, active directory angemeldeten user auslesen, ldap benutzer auslesen, active directory auslesen, php ldap user auslesen, ldap user auslesen, ldap ad username, php ldap benutzer auslesen, http://www.php.de/php-einsteiger/50695-angemeldeten-user-aus-dem-active-directory-ueber-ldap-auslesen.html, ad angemeldete benutzer auslesen, active directory mit php auslesen, ad mit php auslesen, ad angemeldete benutzer anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 18:21 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