Authentifizierung mittels php - ein Alternative zur Anmeldung über Firefox

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Authentifizierung mittels php - ein Alternative zur Anmeldung über Firefox

    Hallo,
    ich möchte Kunden die Möglichkeit bieten eine Software aus einem geschützten Bereich downzuloaden. Nun habe ich die htpasswd Datei dynamisch gestaltet. Für eine bestimmte Zeit sollen sich Kunden sich über einen Link anmelden können. Der Link übergibt das Passwort und den Benutzernamen als GET-Parameter.

    Nun ist der Verzeichnisschutz folgendermaßen konfiguriert:
    alle Dateien außer der exe-Datei sind zugänglich über den Link.

    Ein Script soll nun den Kunden anmelden, damit er einmalig die exe-datei herunterladen kann.

    Meine Frage: wie geht das mit PHP? Denn die Möglichkeit der Anmeldung über die URL funktioniert ja nur bei Firefox und Netscape.

  • #2
    Irgendwas wirst du da wohl bis jetzt noch nicht ganz richtig verstanden haben, denn mit deinem Browser sollte das eigentlich gar nichts zu tun haben...
    Mit PHP kannst du z.B. einfach mit einem Header den Download der Ausgabe erzwingen und danach die exe datei auslesen und ausgeben.
    Dabei musst du wohl noch vorher testen ob der Benutzername mit Passwort in deiner Datenbank vorhanden ist, ob die Zeit da noch nicht abgelaufen ist und ob der Download bereits einmal beendet wurde.
    Um einen abgeschlossenen Download zu speichern kannst du z.B. die PHP-Funktion register_shutdown_function() benutzen. Du solltest am besten bei Beginn des Downloads ein Flag auf "aktiv" setzen, damit er nicht mehrmals gestartet werden kann.
    Die Funktion bei Verbindungsabbruch prüft danach ob bereits die ganze Datei heruntergeladen wurde --> der Download ist mit diesem Benutzernamen und diesem Passwort nicht mehr erlaubt, oder ob die Datei noch nicht heruntergeladen wurde --> Flag wird wieder auf "nicht aktiv" gesetzt.

    Kommentar


    • #3
      Irgendwas wirst du da wohl bis jetzt noch nicht ganz richtig verstanden haben, denn mit deinem Browser sollte das eigentlich gar nichts zu tun haben...
      Hat es aber. Der IE verbietet die Authentifizierung via URL á la benutzernameasswort@www.domain.de aus Sicherheitsgründen (wird gern zum Phishing mißbraucht).

      Via .htaccess dürfte das ohne die Eingabe eines Passworts nicht gehen. Kann sein daß Du wirst mit Sessions und einem eigenen Loginsystem dafür arbeiten müssen. Aber sooo viel Aufwand ist die Eingabe von Benutzernamen und Passwort ja nun auch nicht.

      Kommentar


      • #4
        Original geschrieben von pekka
        Via .htaccess dürfte das ohne die Eingabe eines Passworts nicht gehen.
        Warum nicht? Du kannst ja auch mit PHP bei Apache authentifizieren.
        Und wenn du eine eingabe à la ?x=meinPasswort&y=meinBenutzername machst solltest du auch keine Probleme mit dem Pishingfilter haben.

        Kommentar


        • #5
          Zugangsdaten niemals per GET!

          Kommentar


          • #6
            Original geschrieben von onemorenerd
            Zugangsdaten niemals per GET!
            Naja, in diesem Fall dürfte es nicht so will sein. Der TO will ja quasi einzelne Download-Tickets vergeben.

            Kommentar


            • #7
              Mag in diesem Fall ungefährlich sein. Dennoch sollte er, wenn es denn per GET funktionieren muss, die Zugangsdaten wenisgtens irgendwie so verhashen, dass man der URI nicht gleich ansieht, dass sie vertrauliche Daten enthält.

              Ich gebe zu, den Thread nicht komplett gelesen zu haben. Ich weiß allerdings grob, was der TO umsetzen will und sehe durchaus einen Weg, den Download ohne Zugangsdaten in der URI zu ermöglichen - einfach die Berechtigung in einem Cookie mit begrenzter Lebensdauer beim Client speichern und über eine ID mappen.

              Kommentar


              • #8
                Da der Download damit ja nur einmal funktionieren soll und sogar nach einiger Zeit abläuft gibt es ja wohl kaum Gründe, dass GET in diesem Fall unsicher sein sollte und ob es jetzt ein hash ist oder einzufällig generiertes passwort mit einem Benutzernamen spielt ja wohl keine grosse Rolle, ausser vieleicht, wenn der Benutzername geheim bleiben müsste. Das Passwort könnte ja auch ein Hash sein

                Kommentar

                Lädt...
                X