kugelschreiber
Goto Top

Ldap Authentifizierung auf einer Webseite

Hallo Ihr Lieben,

ich habe einen DomainController (Windows 2k3), der nur eine interne Domain namens "test.local" verwaltet, damit sich die User ganz normal innerhalb des Systems an einer Domäne anmelden können.
Jetzt haben wir vor eine Website zu erstellen, auf der man sich im Backend authentifizieren kann. Da ich den Usern nicht noch ein Passwort aufzwingen möchte, dachte ich mir an eine Authentifizierung gegen das bereits bestehende interne AD mit der Domain test.local. Somit wäre das SingleSignOn perfekt. Der DC hat auch Zugriff aufs Internet. Die Authentifizierung innerhalb des selben Netzes funktioniert bereits.

Nun wollen wir aber den Webserver nicht selbst betreiben (also nicht in unserem internen Netz), sondern diesen bei einem ISP oder Webhoster.
Dazu würde ich nur den Port 389 von der öffentlichen Webseite (www.test.de mit fester IP) auf meiner internen Firewall zulassen und zum DC weiterleiten, indem ich in der Firewall eine neue Regel erstelle.

Meine Fragen:

1. Wie sicher ist diese Variante? Denn so weit ich hier im Forum bereits lesen konnte, wird bei der Übertragung nichts verschlüsselt.
2.Muss der Provider irgendwelche Voraussetzungen haben?
3. Was muss man noch beachten?
4. Habt Ihr andere Lösungen/Vorschläge?

Vielen Dank für Eure Hilfe.

Gruß Kuli

Content-Key: 143935

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

Printed on: April 19, 2024 at 06:04 o'clock

Member: Yusuf-Dikmenoglu
Yusuf-Dikmenoglu Jun 01, 2010 at 08:53:03 (UTC)
Goto Top
Servus,

was du suchst sind eher die "Active Directory-Verbunddienste", im Fachjargon auch als "Active Directory Federation Services (kurz AD FS) bekannt.

[AD FS (Übersicht)]
http://technet.microsoft.com/de-de/library/cc755226(WS.10).aspx


Viele Grüße

/ > Yusuf Dikmenoglu
Member: kugelschreiber
kugelschreiber Jun 01, 2010 at 09:33:50 (UTC)
Goto Top
Hi Yusuf,

danke für den Link. Soweit ich das überblicken konnte, kommt für mich nur das Web-SSO in Frage, wobei der Webserver laut Beschreibung auf http://technet.microsoft.com/de-de/library/cc753352%28WS.10%29.aspx AD FS-fähig sein muss. Das hilft mir aber nicht weiter, da ich selbst dann nicht weiß, mit welcher Technik ich mich zum DC verbinden kann. Momentan mache ich das mit der in PHP integrierten LDAP Klasse. Welche einen Server(Name oder IP), einen Port sowie das Base Directory, gegen dass man sich authentifizieren kann. Somit wollte ich also bei der IP Adresse / Servernamen die öffentliche IP Adresse oder dyndns namen der Firewall eintragen und dort einfach den Port Forwarden.

Das ginge wohl nicht?
Wenn es nicht geht, wie geht es dann richtig?

Danke für Deine Hilfe..
Member: dog
dog Jun 01, 2010 at 22:38:48 (UTC)
Goto Top
1. Wie sicher ist diese Variante? Denn so weit ich hier im Forum bereits lesen konnte, wird bei der Übertragung nichts verschlüsselt.

Garnicht.
Darum nimm gleich LDAPS (Port 636)

2.Muss der Provider irgendwelche Voraussetzungen haben?

Remote Verbindungen erlauben, LDAP Library haben, das Zertifikat deines Servers akzeptieren

was du suchst sind eher die "Active Directory-Verbunddienste", im Fachjargon auch als "Active Directory Federation Services (kurz AD FS) bekannt.

Warum ich die benutzen sollte hat sich mir noch nicht erschlossen.
In der Standardkonfiguration kann jeder beliebige Host ein LDAP Bind gegen den DC machen.
Member: kugelschreiber
kugelschreiber Jun 02, 2010 at 05:58:22 (UTC)
Goto Top
Hi dog

Das klingt ja schon mal sehr vielversprechend.
So in etwa habe ich es mir auch vorgestellt/gewünscht.

> 1. Wie sicher ist diese Variante?

Garnicht.

Dachte ich mir schon, daher auch die Frage

Darum nimm gleich LDAPS (Port 636)

Das klingt schon mal super...

Zitat von @Yusuf-Dikmenoglu:
was du suchst sind eher die "Active Directory-Verbunddienste", im Fachjargon auch als "Active Directory Federation Services (kurz AD FS) bekannt.
Warum ich die benutzen sollte hat sich mir noch nicht erschlossen.

Nichts für ungut Yusuf, aber ich auch nicht...

In der Standardkonfiguration kann jeder beliebige Host ein LDAP Bind gegen den DC machen.

So hatte ich es lokal ja auch am laufen...

Remote Verbindungen erlauben, LDAP Library haben, das Zertifikat deines Servers akzeptieren

Die Remoteverbindungen stellen glaube ich kein Problem dar.
Ebenso die Installation der LDAP Library sollte möglich sein. (Zumindest war das lokal kein Problem)
Nur habe ich noch kein Zertifikat an meinem Server und akzeptieren öffentlkiche Webhoster diese Zertifikate in der Regel?

Habe aber schon auf der Microsoftseite gesucht und eine Installationsbeschreibung gefunden.
Bin noch ein Newbie im Zertifikatsgeschäft und habe das noch nie gemacht.

Du bist mir aber schon mal eine sehr große Hilfe gewesen.

Solltest Du/Yusuf/Rest der Welt noch Anregungen haben oder schon einmal ein solches Szenarium durchgespielt haben bin ich für jede Hilfe dankbar.

Gruß Kuli
Member: Yusuf-Dikmenoglu
Yusuf-Dikmenoglu Jun 02, 2010 at 06:53:12 (UTC)
Goto Top
Moin,

Zitat von @dog:
Warum ich die benutzen sollte hat sich mir noch nicht erschlossen.

da man intern von extern trennen sollte.
Ja klar, man kann vieles machen, aber ich bin ein Freund von strikter Trennung.

In der Standardkonfiguration kann jeder beliebige Host ein LDAP Bind gegen den DC machen.

Ja und? Es hat auch keiner das Gegenteil behauptet.


Gruß, Yusuf Dikmenoglu
Member: kugelschreiber
kugelschreiber Jun 02, 2010 at 07:02:55 (UTC)
Goto Top
> Warum ich die benutzen sollte hat sich mir noch nicht erschlossen.

da man intern von extern trennen sollte.
Ja klar, man kann vieles machen, aber ich bin ein Freund von strikter Trennung.

Wogenau trennt man denn da? Scheinbar habe ich das Prinzip noch nicht verstanden.


> In der Standardkonfiguration kann jeder beliebige Host ein LDAP Bind gegen den DC machen.

Ja und? Es hat auch keiner das Gegenteil behauptet.

Ich halte dies aber für die momentan einfachere Variante...

Dies soll kein Streitgespräch werden. Ich versuche nur die für mich Newbie einfachste Lösung zu finden, die halberwegs sicher ist.
Das Wichtigste für mich ist aber, Sie auch zu verstehen.

Danke Euch...
Member: dog
dog Jun 02, 2010 at 17:35:51 (UTC)
Goto Top
Ja und? Es hat auch keiner das Gegenteil behauptet.

Schlechter Tag? face-smile

Mich würde aber interessieren, ob es mit AD FS überhaupt möglich ist eine Integration mit einem LAMP-System zu machen.
Member: Yusuf-Dikmenoglu
Yusuf-Dikmenoglu Jun 02, 2010 at 17:50:33 (UTC)
Goto Top
Zitat von @dog:
Schlechter Tag? face-smile

Nö, keineswegs. Deine Aussage kam mir jedoch "vorwurfsvoll" rüber. Daher meine Reaktion.

Mich würde aber interessieren, ob es mit AD FS überhaupt möglich ist eine Integration mit einem LAMP-System zu machen.

Ich kam damit bisher zwar noch nicht in Berührung, aber ich bin mir sicher das sich ein Lösung dazu finden lässt.


Gruß, Yusuf Dikmenoglu
Member: kugelschreiber
kugelschreiber Jun 02, 2010 at 18:13:33 (UTC)
Goto Top
face-sad

Ich habe gerade erfahren, das der HOSTER (in diesem Fall keinsundkeins) noch nicht einmal das LDAP Modul installiert hat.
Tja, dann werde ich mal die Domain umziehen zu einem der es hat und kann.
Irgendwelche Vorschläge von Euch, dann spare ich mir wahrscheinlich die nächtelange Suche nach einem Webhoster, der LDAP Auth über andere Server zulässt...

HHHMMM...

Schade, aber ich lasse nicht locker...

Dank Euch erstmal

Gruß Kuli
Member: dog
dog Jun 02, 2010 at 18:26:08 (UTC)
Goto Top
Sagt ja niemand, dass du direkt per LDAP zugreifen musst. face-smile
Du kannst ja auch lokal einen Webdienst laufen lassen, der gegen LDAP arbeitet und den vom Webserver aus ansprechen...
PHPs cURL ist ohnehin wesentlich benutzerfreundlicher als LDAP.
Member: kugelschreiber
kugelschreiber Jun 02, 2010 at 18:34:03 (UTC)
Goto Top
So eine Art Webservice? Dann müsste ich aber mein lokales Netz über einem Webserver direkt an die Öffentlichkeit bringen.
Das will ich irgendwie nicht so wirklich. Denn dann könnte ich die Webseite auch gleich lokal betreiben, oder habe ich ein Denkproblem?
Member: dog
dog Jun 02, 2010 at 18:42:47 (UTC)
Goto Top
Wo ist denn der Unterschied wenn du einen offenen Port für LDAP oder einen offenen Port für einen HTTP-Server betreibst? face-smile

De facto wäre HTTP(S) sogar noch sicherer, weil man auch bei einem Programmierfehler nicht an alle LDAP-Daten kommt, sondern nur die, die der Webservice auch bereitstellt.
Member: kugelschreiber
kugelschreiber Jun 02, 2010 at 20:01:45 (UTC)
Goto Top
Recht haste. Also werde ich es defacto ansatzweise so probieren...