.htaccess authentifizierung per JavaScript setzen?

NetBull

Erfahrenes Mitglied
Hi,

google erzählt mir nix zum Thema.

Vorgeschichte: Ich muss über meinen V-Server Dateien zur Verfügung stellen, an Leute die ich per E-Mail einlade, die aber nicht mit Passwort-Eingabe genervt werden sollen. Die Dateien sollen nur für diese Leute zur Verfügung stehen und auch von Suchmaschinen nicht erfasst werden können. Die einzige Methode die mir einfällt ist .htaccess und eine Umleitung per header mit php/javascript nach Überprüfung eines Tokens das als Link an einen Benutzer gesendet wurde, so das jeder Benutzer die Seite nur noch mit dem angestellten Token aufruften kann oder seine Benutzerdaten übergeben muss.

So weit so gut. Leider läuft eine Umleitung mit htaccess Anmeldung nicht im IE (IE sucks)

Frage:
Kann ich per JavaScript die Authentifizierung durchführen?
Natürlich läuft das als https so das keiner mitsniffen kann.

LG deAndro
 
Und warum die Dateien nicht über PHP ausliefern?
Token/Benutzeranmeldung über PHP regeln,
die Dateien in ein komplett gesperrtes Verzeichnis (htaccess)
und bei Bedarf mit PHP darauf zugreifen und senden.
 
@sheel:

Hi,

wenn ich den Zugriff auf die Dateien per PHP ermögliche, dann mach ich doch auch nur ein geparstes HTML auf das der User zugreift, oder?

1. User logged sich ein
2. php holt die Datei aus einem geschützten Bereich
3. legt die datei in einem tmp Ordner ab
4. user schliesst browser

// bis zum nächsten User der PHP ausführt wäre die Datei ungeschützt, falls Suchmaschinen den Ordner scannen.

Oder bin ich gaaaanz falsch?

LG deAndro...
 
Das meinte ich anders:
PHP kann nicht nur dazu verwendet werden,
bei Aufruf eine HTML-Seite zum Anzeigen zusammenzubasteln (mit DB-Daten usw.),
sondern man kann beim Aufruf zB. den Brower auch einen Dateidownload starten lassen.
(Wie genau: weiter unten.)

Das, was heruntergeladen wird, ist dabei die "Ausgabe" vom PHP-Script;
ist in dem Fall eben nicht HTML, sondern der Inhalt einer geschützten Datei.
Die eigentliche Datei bleibt immer im sicheren Ordner, von außen nicht zugreifbar,
und nur über das PHP-Programm bekommt man nach ausreichender Berechtigungsprüfung
den Inhalt zum Herunterladen.

Download-Script der einfachsten Sorte (kopiert von php.net):
PHP:
<?php
header('Content-type: application/pdf');
header('Content-Disposition: attachment; filename="downloaded.pdf"');
readfile('original.pdf');
?>

Also
*die PHP-Datei mit einem sicheren Token aufrufen
(das der Benutzer per Mail etc. erhalten hat, als GET/POST-Parameter ins Script kommt,
eindeutig ist, nicht erratbar durch Andere...)

*Irgendwie ermitteln welche Datei benötigt wird und ob der Benutzer berechtigt dazu ist
(zB. Token bestimmt Datei, ohne Wahlmöglichkeit für den Benutzer.
Dateinamen zum Token aus DB abfragen)

* Mimetyp ermitteln und per header senden
(gibt es nur PDF, nur JPG, ... oder gemischte Dateiarten?)

* Content-Disposition senden, inkl. einem vorgeschlagenen Dateinamen für den Benutzer

* Datei ausgeben: readfile('pfad/name');
 
Zurück