pipooma
Goto Top

LDAP in PHP

Halloo zusammen,

ich habe Aufgabe von meinem Chef bekommt und zwar Single Sign-On. Wir entwickeln im Haus einen Portal mit dem PHP. Der Portal sollte Single Sign On sein. Ich habe im Internet rescheschiert und habe den Begriff LDAP gefunden.

Nach dem ich gegoogelt habe, ist es mir noch nicht ganz klar, was ein LDAP ist.

Ich habe Frage an euch, senior developer:

LDAP ist ja ein Protokoll. Muss man LDAP dienst extra in windows server 2003 installieren oder der dienst einfach zu starten.

Im Vorraus bedanke ich mich ganz herlich fuer Eure Hilfe.


Danke

Pipoo

Content-ID: 256330

Url: https://administrator.de/contentid/256330

Ausgedruckt am: 22.11.2024 um 21:11 Uhr

wiesi200
wiesi200 01.12.2014 um 08:03:56 Uhr
Goto Top
Hallo,

nö du musst nicht's extra aktivieren. Sobald du eine Windows Domain hast kannst du per LDAP einfach darauf zugreifen.
pipooma
pipooma 01.12.2014 um 08:16:10 Uhr
Goto Top
Danke fuer deine antwort.

es ist mir noch nicht ganz klar. Wenn man ein AD hat, ist ein LDAP auch automatisch installirt oder aktiviert?

Danke

Pipoo
wiesi200
wiesi200 01.12.2014 um 08:21:25 Uhr
Goto Top
Im Endeffekt ist ein AD ein LDAP-Verzeichnissdienst, somit ja.
Sobald du ein AD hast kannst du darauf per LDAP zugreifen.
pipooma
pipooma 01.12.2014 um 08:37:57 Uhr
Goto Top
Danke nochmal fuer die erklaerung.

Also,

Wenn es AD gibt, dann ist LDAP auch automatisch da.

wenn der AD ACME heisst, dann wie laeuft der protokoll.
ZB. Username max mustermann.
Wie laeuft der protokoll ldap?

Ldap://acme/........

Danke nochmal
wiesi200
wiesi200 01.12.2014 um 09:18:56 Uhr
Goto Top
Ich glaub die Seite sollte das wie etwas aufhellen.
http://technet.microsoft.com/de-de/library/aa996205(v=exchg.65).aspx
colinardo
colinardo 01.12.2014 um 09:40:56 Uhr
Goto Top
Hallo Pipoo,
und sobald du die Grundlagen verstanden hast, hier eine beispielhafte Umsetzung zur Überprüfung der Credentials mit PHP, hatten wir vor kurzem erst face-smile
PHP LDAP Login

Grüße @colinardo
riddler2kone
riddler2kone 01.12.2014 um 10:31:34 Uhr
Goto Top
Hallo Pipoo,

ein Single-Sign-On mit PHP und deiner Windows-Domäne ist machbar aber auch nicht "mal eben so" aus dem Ärmel geschüttelt.

Zunächst musst du überhaupt erst mal verstehen um was es hier überhaupt geht. Daher zunächst erst mal: Deine Domäne stellt ein Verzeichnisdienst, das Active Directory, zur Verfügung in dem alle deine Benutzer, Computer und noch viele weitere Objekte abgelegt sind. Um auf dieses Verzeichnis zuzugreifen, benötigst du irgendeine Sprache, die sowohl dein PHP als auch das Active Directory verstehen. Und hier kommt LDAP ins Spiel. Näheres kannst du auf seiner Wikipedia-Seite nachlesen:

http://de.wikipedia.org/wiki/Lightweight_Directory_Access_Protocol

Beim Single-Sign-On muss dein Webserver - auf dem euer Portal läuft - dem Active Directory bekannt sein, damit er die Authentifizierung über beispielsweise Kerberos abarbeiten kann.

Ist dein Webserver Windows- oder Linux-Basiert?

Viele Grüße
pipooma
pipooma 01.12.2014 um 10:44:57 Uhr
Goto Top
Hallo Riddler2kone,


vielen Dank fuer die Antwort. Was es mich irritiert, ist es LDAP.

Kannst du mir bitte sagen, wie laeuft mit single sign on schritt fuer schritt.


unser webserver basiert auf linux. AD ist auf w2k3

danke
colinardo
colinardo 01.12.2014 aktualisiert um 11:12:02 Uhr
Goto Top
vielen Dank fuer die Antwort. Was es mich irritiert, ist es LDAP.
LDAP ist ein Protokoll, und auf einem AD-Server standardmäßig automatisch aktiviert und horcht auf Port 389 des Servers. Um per LDAP Daten von einem anderen Rechner aus abzufragen ist eine Authentifizierung am Server nötig und dies wird auf Windows-Servern standardmäßig über Kerberos abgewickelt, und das muss man dem Linux Server bzw. dem Apache via Modul beibringen:
Step-by-Step: https://www.drupal.org/node/1371478
riddler2kone
riddler2kone 01.12.2014 um 12:49:27 Uhr
Goto Top
Hallo pipo,

ich kann dir keine Schritt-für-Schritt Anleitung geben. Dann würde ich selber hier eine Stunde alles zusammensuchen und könnte es dir dann auch direkt fertig machen face-wink.

Ich kann mich aber erinnern, was ich grob gemacht habe:

- im AD einen User angelegt
- Domänen-Zertifikate exportiert als PEM und aufm Linux Server eingebunden
- Mittels Kerberos den zuvor genutzten User eingebunden

Die letztendliche Authentifizierung habe ich ganz lapidar umgesetzt, da anschließend in der globalen Variable $_SERVER['REMOTE_USER'] der entsprechende Kerberos-Authentifizierte Benutzer des Computers steht.

Diese Anleitungen wird dir viel Hilfestellung leisten:

http://it.physik.uni-muenchen.de/dienste/betriebssysteme/linux/zugriff/ ...

https://fuhm.net/linux-and-active-directory/

Ansonsten sind die Such-Stichwörter "kerberos" "sso" "single sign on" "active directory" und natürlich "linux".