Falc410
Vice Admiral
- Registriert
- Juni 2006
- Beiträge
- 6.419
Ich frage mich gerade, wie das funktioniert, dass nur eingeloggte Nutzer z.B. Dateien herunterladen dürfen - und zwar ohne PHP oder Plugins.
Hintergrund ist: Wir hosten eine Webseite mit Django (Python), die über WSGI mit einem Apache Server kommuniziert. Statische Files, z.B. MP3 / MP4 liegen im wwwroot und werden vom Apache ausgeliefert. Ich kann zwar in Django / Python abfragen ob User X berechtigt ist, aber im Prinzip kann jeder User mit dem direkten Link auf die Dateien zugreifen. Ich kann also nicht verhindern, dass User X den Link teilt und sich jemand anderes dann die Dateien herunterlädt. Der Apache kennt ja keine User.
Hatte schon überlegt ob ich den Link hinter Javascript verstecke, aber die Dateien sollen im Browser abgespielt / angezeigt werden. Wir benutzen dafür einfach das HTML5 Audio bzw. Video Tag - funktioniert gut. Aber jeder kann im Seitenquelltext dann natürlich den Link sehen - der zeigt ja auf die Datei die geladen worden ist. Nur den Download können wir nicht unterbinden.
Wie schaffen das andere Webseiten? Ich könnte natürlich ein Plugin benutzen, aber wir wollen explizit keine Plugins voraussetzen. Im Prinzip bräuchte ich eine Art Proxy der dann die eigentliche Datei lädt - aber solange diese irgendwie vom Apache ausgeliefert wird, kann man diese auch immer herunterladen. Trotzdem gibts das ja bei fast jeder Webseite, dass man selbst mit einem Link keine Berechtigung hat auf die Datei zuzugreifen wenn man nicht die richtigen Privilegien hat. Wie lösen die das?
Hintergrund ist: Wir hosten eine Webseite mit Django (Python), die über WSGI mit einem Apache Server kommuniziert. Statische Files, z.B. MP3 / MP4 liegen im wwwroot und werden vom Apache ausgeliefert. Ich kann zwar in Django / Python abfragen ob User X berechtigt ist, aber im Prinzip kann jeder User mit dem direkten Link auf die Dateien zugreifen. Ich kann also nicht verhindern, dass User X den Link teilt und sich jemand anderes dann die Dateien herunterlädt. Der Apache kennt ja keine User.
Hatte schon überlegt ob ich den Link hinter Javascript verstecke, aber die Dateien sollen im Browser abgespielt / angezeigt werden. Wir benutzen dafür einfach das HTML5 Audio bzw. Video Tag - funktioniert gut. Aber jeder kann im Seitenquelltext dann natürlich den Link sehen - der zeigt ja auf die Datei die geladen worden ist. Nur den Download können wir nicht unterbinden.
Wie schaffen das andere Webseiten? Ich könnte natürlich ein Plugin benutzen, aber wir wollen explizit keine Plugins voraussetzen. Im Prinzip bräuchte ich eine Art Proxy der dann die eigentliche Datei lädt - aber solange diese irgendwie vom Apache ausgeliefert wird, kann man diese auch immer herunterladen. Trotzdem gibts das ja bei fast jeder Webseite, dass man selbst mit einem Link keine Berechtigung hat auf die Datei zuzugreifen wenn man nicht die richtigen Privilegien hat. Wie lösen die das?