Sven Rautenberg: htaccess - keine Login-Daten im SERVER-Array

Beitrag lesen

Moin!

OK, die Idee war super: Alle können Sich die PUBLIC-Daten anschauen. Die Login-Datei ist geschützt (enthält einen einfachen Javascript-Redirect auf die Hauptseite) und durch den Link erfolgt die Anmeldung. Tatsächlich fragt er auch Username und Passwort ab. Aber sobald man wieder auf der Hauptseite gelandet ist, wird das Feld REMOTE_USER im Serverarray nicht mehr ausgegeben. (und auch kein anderes USER_LOGIN-Feld)

Ich bleibe aber eingelogt, das heisst, beim nächsten Klick auf Login werden die Daten nicht mehr abgefragt. Das Problem ist also ähnlich wie hier: http://forum.de.selfhtml.org/archiv/2004/11/t94808/#m574539

Zwei mögliche Szenarien sind denkbar:

1. Der Browser merkt sich ggf., ob für die Abfrage einer Ressource schon mal ein Passwort verlangt wurde, und sendet bei einem erneuten Request einfach die gespeicherten Anmeldedaten schon mit - oder eben nicht.

2. Der Browser versucht immer, ohne Anmeldedaten Zugriff zu erlangen, und nur beim scheiternden Versuch (Status 401) versucht er, bereits eingegebene Anmeldedaten, die schon mal bei identischem REALM angegeben wurden, mitzusenden. Schlägt auch das fehl, wird erneut das Passwortfenster angezeigt.

Dieses Verhalten ist "normal". Es gibt bei HTTP-Authentifizierung kein "eingeloggt", was man auf andere Seiten mitschleifen könnte, sondern es gilt nur die jeweilige Ressource, und dafür der erlaubte oder verweigerte Zugriff qua definitionem der .htaccess.

Da .htaccess am einfachsten arbeitet, wenn es verzeichnisorientiert eingesetzt wird, solltest du deine URLs für öffentlichen und authentifizierten Zugang ebenfalls separiert verwalten. Dann wird jeglicher Zugriff auf das authentifizierte Verzeichnis mit Passwort und Username abgewickelt, und du hast auf die Information REMOTE_USER Zugriff.

Toms Versuche mit dem Provozieren von Anmeldedaten scheitert meines Erachtens an dem Punkt, wo es darum geht, eine Seite wahlweise unangemeldet oder angemeldet betrachten zu können, denn das grundsätzliche Problem ist ja nicht gelöst: Ohne Anmeldedaten soll ja kein Anmeldefenster erscheinen - aber nur wenn jemals das Anmeldefenster erschien, wird der Browser die Anmeldedaten überhaupt mitsenden.

Abgesehen davon ist ein Verzeichnis, in dem NICHT mit .htaccess der Zugang kontrolliert wird, grundsätzlich unkontrollierter Zugriff von außen möglich. Lediglich die Skripte, die die Authentifizierung prüfen, würden ggf. den Zugriff ablehnen. Es ist von daher taktisch unklug, auf .htaccess zu verzichten.

- Sven Rautenberg

--
"Love your nation - respect the others."
0 42

htaccess - keine Login-Daten im SERVER-Array

Tom Feller
  • php
  1. 0
    Matze
    1. 0
      Tom Feller
      1. 0
        Matze
        1. 0
          Tom
      2. 0
        Tom
        1. 0
          Tom Feller
          1. 0
            Tom
            1. 0
              Tom Feller
              1. 0

                Zum Testen

                Tom
                1. 0
                  Tom Feller
                  1. 0
                    Tom
                  2. 0
                    Tom
                    1. 0

                      Zum Testen, Version für CGI

                      Tom
            2. 0
              Tom
              1. 0
                Tom Feller
  2. 0
    Sven Rautenberg
    1. 0
      Tom
      1. 0
        Sven Rautenberg
    2. 0
      Tom Feller
      1. 0

        Bitte noch den Test durchführen

        Tom
        1. 0
          Tom Feller
          1. 0

            Und noch eine Idee für die Fehlerquelle

            Tom
          2. 0

            Erste Fehlerquelle gefunden

            Tom
            1. 0
              Tom Feller
              1. 0

                Kommt $_SERVER['HTTP_CGI_AUTHORIZATION'] an?

                Tom
                1. 0
                  Tom Feller
                  1. 0
                    Tom Feller
                    1. 0
                      Tom
                      1. 0
                        Tom Feller
                        1. 0

                          Rien ne vas plus avec cet server

                          Tom
                          1. 0
                            Tom Feller
                            1. 0
                              Tom
                              1. 0
                                Tom Feller
                  2. 0
                    Tom
      2. 1
        Sven Rautenberg
        1. 0
          Tom Feller
          1. 1
            Sven Rautenberg
            1. 0
              Tom Feller
              1. 0

                Atombomben und Atomkraftwerke ;-)

                Christian Seiler
                • menschelei
            2. 0

              Crypt auf MD5-Basis

              Dennis
              • programmiertechnik
              1. 0
                Tom Feller