CronJob-Service
bei SELFPHP mit ...
|
+ minütlichen Aufrufen
+ eigenem Crontab Eintrag
+ unbegrenzten CronJobs
+ Statistiken
+ Beispielaufrufen
+ Control-Bereich
Führen Sie mit den CronJobs von
SELFPHP zeitgesteuert Programme
auf Ihrem Server
aus. Weitere Infos
|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken |
29.11.2006, 16:43:52
|
Anfänger
|
|
Registriert seit: Aug 2005
Beiträge: 4
|
|
Windows-Benutzer auslesen und via LDAP am Intranet anmelden
Hallo miteinander,
ich hab schon viele Foreneinträge gelesen, aber finde nicht die richtige Lösung.
Also, wir haben nen Windows 2003 Server mit Apache 1.3.33 und PHP 4.4.0. ein Umstieg auf IIS ist NICHT möglich.
Was möchte ich erreichen:
1)
Der Mitarbeiter ist am Windows angemeldet, öffnet den Browser, wir lesen irgendwie den Benutzer aus (soll angeblich in remote_user stehen), wir schauen nach ob den Benutzer in einer vorhanden MySQL-DB gibt und loggen den Mitarbeiter dann mit seinen Rechten (z.B. Redakteur, Admin, ...) ein.
2)
Es gibt dann noch einen Login-Button, um z.B. an einem fremden Rechner sich mit seiner Kennung anzumelden. Hier kommt dann ein Formular, ich gebe meine Windows-Daten ein, die dann an das LDAP geschickt werden. Paßt alles, wird der neue Benutzer am Intranet angemeldet.
So, nun das Problem:
Schritt 2 funktioniert ohne Probleme!
Schritt 1 leider nicht. Der Browser zeigt immer ein Loginfenster (HTTP-Authenfikation). Wie schaffe ich es, dass ich den Benutzer auslesen kann? Hat jemand konkret das schon umgesetzt? Oder kann das jemand für mich programmieren? Gerne auch gegen Bezahlung, es ist für´s Geschäft und unser Programmierer ist am Limit! :-)
PS: Was komisch ist: wir nutzen das oben beschriebene derzeit schon so, nur mit NTLM (mittels htaccess-Datei). Hier funktioniert es genauso wie oben beschrieben: Browser öffnen und ich werde automatisch angemeldet.
|
29.11.2006, 16:47:55
|
|
SELFPHP Guru
|
|
Registriert seit: May 2003
Beiträge: 7.187
|
|
AW: Windows-Benutzer auslesen und via LDAP am Intranet anmelden
Du kannst den Benutzernamen, unter dem der Benutzer am Betriebssystem angemeldet ist, nicht per PHP identifizieren.
|
30.11.2006, 08:27:14
|
Anfänger
|
|
Registriert seit: Aug 2006
Beiträge: 102
|
|
AW: Windows-Benutzer auslesen und via LDAP am Intranet anmelden
Zitat:
Zitat von xabbuh
Du kannst den Benutzernamen, unter dem der Benutzer am Betriebssystem angemeldet ist, nicht per PHP identifizieren.
|
Das sehe ich als gerücht!
google nach 'NTLM PHP' und du wirst fündig!
Edit:
@Ersteller: Beim google stößt man auch öfters auf dich mit deinem Problem aus 2005 ;)
Geändert von DominikJ (30.11.2006 um 08:31:00 Uhr)
|
30.11.2006, 09:07:15
|
|
SELFPHP Guru
|
|
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
|
|
AW: Windows-Benutzer auslesen und via LDAP am Intranet anmelden
Zitat:
Zitat von DominikJ
Das sehe ich als gerücht!
|
Naja, das Gerücht ist so lange Tatsache, bis der Client im HTTP Protokoll die Variable remote_user setzt. Und genau da gibt es das nächste Problem, weil man diese Variable mittels Script (auf der Clientseite) ja setzen kann:
header('remote_user: IchBinDerChef');
Also muß das NTLM Handshake nachgebaut werden, um den Client auch sicher über die Userdatenbank zu verifizieren.
Einen Teil der Arbeit kann man sich erleichtern, in dem man PHP mit dem IIS verheiratet.
|
30.11.2006, 09:29:26
|
Anfänger
|
|
Registriert seit: Aug 2006
Beiträge: 102
|
|
AW: Windows-Benutzer auslesen und via LDAP am Intranet anmelden
naja, man muss ja nicht remote_user nutzen.
Und wenn ich es richtig verstanden habe, hat engel4u das gleiche vor, was ich gestern geschrieben habe!
engel4u, bitte einmal bestätigen:
- Du bist in einer Domäne und willst im Intranet den NT-Nutzer erkennen?
- Du nutzt keinen IIS Server
- LDAP Verzeichnis
wenn das zutrifft lies doch einfach alles per NTLM aus;
- checken ob Header Authorization gesetzt ist
- Header 401 setzen
- Header www-authenticate NTLM setzen
- auf antwort warten
- checken ob Header Authorization gesetzt ist (Wert: NTLM base64_encoded_string)
- client base64 string zurücksenden
- auf rückantwort warten
- den base64 string decoden und 'übersetzen'
Geändert von DominikJ (30.11.2006 um 09:33:23 Uhr)
|
02.12.2006, 19:44:56
|
|
SELFPHP Guru
|
|
Registriert seit: May 2003
Beiträge: 7.187
|
|
AW: Windows-Benutzer auslesen und via LDAP am Intranet anmelden
Zitat:
Zitat von DominikJ
Das sehe ich als gerücht!
google nach 'NTLM PHP' und du wirst fündig!
|
Danke, das war mir so noch nicht bekannt.
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 13:47:27 Uhr.
|