Hi,
ich habe eine PHP/CGI Anwendung, die ein Login erfordert.
Die Anwendung ist Teil eines mittels .htaccess geschützten Bereiches.
Momentan muss sich der User zweimal anmelden - einmal um in den
geschützten Bereich zu gelangen und nochmal, um die PHP/CGI Anwendung
nutzen zu können.
Gibt es eine Möglichkeit, die Daten aus der .htaccess Anmeldung (inkl.
Passwort) der anderen Anwendung zu übergeben, so dass nur noch eine
Anmeldung erforderlich ist?
wenn Deine PHP-Anwendung das Kennwort prüft, sieht es schlecht aus.
Denn meines Wissens kommst Du da nicht ohne weiteres ran.
Die CGI-Schnittstelle jedenfalls hat keine Chance; ob PHP als Apache-Modul da intern etwas drehen kann, weiß ich im Moment nicht (glaube aber, mich zu erinnern, daß wir genau diese Diskussion vor ein paar Wochen schon mal hatten -> Archiv fragen).
Wenn Deinen PHP-Anwendung lediglich geschützt sein soll, dann stecke sie einfach in denselben Realm wie Deine Anmeldeseite.
Und wenn sie die Benutzerkennung braucht - die steht im CGI-Environment.
Nur das Kennwort eben nicht.
Das kann im allgemeinen Fall dort auch gar nicht stehen, denke ich - weil es je nach AuthType selbst dem Webserver überhaupt nicht bekannt ist.
Falls das Passwort nämlich verschlüsselt geliefert wurde (AuthType Digest), kann der Webserver es bestenfalls mit einem ebenfalls verschlüsselt gespeicherten Kennwort vergleichen, Dir aber nicht das Original sagen. (keine Umkehrfunktion für MD5)
Falls Deine PHP-Anwendung genauso schlau ist, also auch ihre Passworte verschlüsselt speichert, dann könnte sie zufällig kompatibel zur HTTP-Authentication sein ...
Du siehst, da stecken eine Menge "wenns" drin.
Prinzipiell geht, was Du willst, solange Dir niemand irgendwas Notwendiges zugenagelt hat.
Und "AuthType Digest" ist zwar von 1997, aber Browser wie Netscape 6.2.2 sind leider noch nicht in der Lage, solche neuzeitlichen Erfindungen bereits zu unterstützen ...
Viele Grüße
Michael