Benutzer mit PHP gegen ein Active Directory authentifizieren

URL dieses Beitrags: http://blog.stefan-macke.com/2007/07/12/benutzer-mit-php-gegen-ein-active-directory-authentifizieren/

Mit den LDAP Funktionen von PHP kann man wie folgt recht einfach Benutzer gegen ein Active Directory authentifizieren (LDAP_SERVER ist durch die Adresse des AD-Servers zu ersetzen):

  1. /**
  2. * Authenticates a user against Active Directory.
  3. *
  4. * @param         string      The user's Windows username.
  5. * @param         string      The user's Windows password.
  6. * @return      bool            Whether the user could be authenticated.
  7. */
  8. public function Authenticate($username, $password)
  9. {
  10.   $ds = ldap_connect(LDAP_SERVER);
  11.   if ($ds)
  12.   {
  13.     $authenticated = false;
  14.     $bind = ldap_bind($ds, $username, $password);
  15.     if ($bind)
  16.     {
  17.       $authenticated = true;
  18.     }
  19.     ldap_close($ds);
  20.     return $authenticated;
  21.   }
  22.   else
  23.   {
  24.     $err = 'Verbindung zum LDAP-Server nicht möglich: ' . LDAP_SERVER;
  25.     throw new Exception($err);
  26.   }
  27. }
Füge diesen Artikel zu deinen Bookmarks hinzu Diese Icons verzweigen auf soziale Netzwerke bei denen Nutzer neue Inhalte finden und mit anderen teilen können.
  • del.icio.us
  • bodytext
  • MisterWong
  • Reddit
  • Technorati
  • Spurl
  • description

Kommentare zu diesem Beitrag

  1. Gravatar Markus Fischer
    Am 14. July 2007 um 09:29 Uhr

    Ich bin auf der Suche nach Infos, wiie ich aus dem Windows LDAP mehr rausbekommen. Insbesondere gehts mir um all die netten Informationen, die der Windows-Server verwaltet und die ich in einer Heterogenen Umgebung woanders auch brauchen kann:
    - Vorname, Nachname, Kürzel (letzteres voll wichtig)
    - aktive Gruppenzugehörigkeit
    Vielleicht diesbezüglch Ideen? :)

  2. Gravatar Patrick
    Am 14. July 2007 um 12:50 Uhr

    Mit dem Programm Ldp.exe kannst du dich zum Active Directory verbinden und die Attribute der einzelen Objekt ansehen.

    http://support.microsoft.com/kb/224543

Einen Kommentar schreiben

XHTML: Diese Tags sind erlaubt: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>