[gelöst] Verschlüsseln von Dateinamen

am 16.04.2012 - 14:52 Uhr in
Hallo Forum,
ich habe mein Dateisystem in Drupal auf "privat" umgestellt und meine Up/Downloads liegen nun außerhalb des Webroots.
Soweit alles wunderbar und es können nur noch eingeloggte Benutzer auf die Dateien zugreifen.
Problem ist aber die Organisation der Dateien bzw. die (nicht vorhandenen Zugriffsrechte für diese,)
Wenn z.B. Benutzer X eine Datei "Bild.jpg" hochlädt
und Benutzer Y ebenfalls,
Liegen im Downloads-Ordner die Dateien "Bild.jpg" und "Bild_0.jpg".
Jeder der dann bis drei zählen kann, in dem Fall Benutzer Y, kann sehen, dass er evtl. mal die URL "Bild.jpg" eingeben und auf eine Datei eines anderen Benutzers (X) stoßen könnte.
Kann man dies z.B. über ein Modul, das Dateinamen verschlüsselt, verhindern?
Vielen Dank für jede Info
- Anmelden oder Registrieren um Kommentare zu schreiben
Auch wenn ich persönlich vom
am 16.04.2012 - 16:37 Uhr
Auch wenn ich persönlich vom diesem "Security-by-Obscurity"-Ansatz überhaupt nichts halte, hilft dir evtl. das hier weiter:
http://drupal.stackexchange.com/questions/9744/how-do-i-change-the-uploa...
Gut gesagt Exterior, wenn Du
am 16.04.2012 - 17:37 Uhr
Gut gesagt Exterior,
wenn Du davon ausgehst das ein Benutzer eingeloggt ist und
den URL kennt oder erraten kann,
dann bringt es Sicherheitstechnisch nichts die Upgeloadeten
Dateien umzubennen.
Man kann doch eigentlich in den Berechtigungen festlegen ob ein User
nur den eigenen Kontent ansehen oder ändern kann.
Gruss
Robert
Exterior schrieb Auch wenn
am 16.04.2012 - 19:01 Uhr
Auch wenn ich persönlich vom diesem "Security-by-Obscurity"-Ansatz überhaupt nichts halte, hilft dir evtl. das hier weiter:
http://drupal.stackexchange.com/questions/9744/how-do-i-change-the-uploaded-file-name-after-the-node-has-been-saved
In Sachen SbO bin ich bei dir, doch der Fall liegt nicht zwingend vor. Was denkst du wie die Welt aufschreien würde, könnte man bei Facebook private Fotos und Videos per Hotlink öffentlich zugänglich machen? Oder denk mal an kundenspezifische Preislisten, o.ä.
Zitat: Oder denk mal an
am 16.04.2012 - 20:16 Uhr
Oder denk mal an kundenspezifische Preislisten, o.ä.
Dann sollte man aber einen anderen Weg wählen, als die Datei umzubenennen, damit niemand den Dateinamen errät, oder? Das wäre doch Wahnsinn, sich darauf zu verlassen, dass niemand zufällig Zugriff auf die vertraulichen Dokumente hat.
Dann würde ich den Zugriff auf den Datei-Ordner per .htaccess sperren (
deny from all
) und sämtliche Dateien direkt über den Server ausgeben und einer gesonderten Prüfung unterziehen.Was denkst du wie die Welt aufschreien würde, könnte man bei Facebook private Fotos und Videos per Hotlink öffentlich zugänglich machen?
Das ist zumindest bei StudiVZ und MeinVZ möglich, soweit ich das beurteilen kann ;-)
Sorry, darauf habe ich mir
am 16.04.2012 - 22:11 Uhr
Sorry, darauf habe ich mir gar nicht bezogen. Hatte nur quergelesen. Kardinalsfehler, ich weiß ;)
Das autom. Umbenennen in Drupal sehe ich unproblemtatisch. Entwederjemand hat das Recht eine Datei abzurufen oder nicht. Wie sie heißt ist doch unerheblich, so lange sie nicht meine_visa_karten_prüfziffer_ist_345.txt heißt. ;-)
Was bringt es mir zu wissen, dass eine Datei bestimmten Namens gibt, wenn ich keine Zugrifsrechte auf sie haben?
Hallo und vielen Dank für die
am 17.04.2012 - 08:14 Uhr
Hallo und vielen Dank für die Antworten,
dann ist es also so, dass wenn ich einen Inhaltstypen "Trainer" habe und dann in den Berechtigungen für Benutzer einstelle, dass Benutzer beim Inhaltstype "Trainer" nur Content sehen können, den sie erstellt haben, sich dies auch auf die hochgeladenen Dateien auf dem Server auswirkt?
Beispiel:
- Benutzer A legt Trainer "Müller" an
- Benutzer A lädt über ein Feld "Dateien" (normales Drupal File-Field) im Inhalt "Müller" eine Datei "anstellungsvertrag.pdf" hoch.
- Diese Datei liegt nun unter der URL (ich habe ja ein privates Filesystem eingestellt) http://meinedomain/system/files/anstellungsvertrag.pdf
Wenn sich nun Benutzer B in das Drupal System einloggt und die URL http://meinedomain/system/files/anstellungsvertrag.pdf aufruft, kann er diese nicht einsehen?
Ist dies wirklich über die Berechtigungen geklärt, denn ich dachte nur dass durch die Berechtigungen nur geklärt ist, dass Benutzer B nicht den Node Trainer "Müller" von Benutzer A sehen darf,
aber gilt das auch für den direkten Aufruf der Datei, die ja eigentlich so keinem Node zugeordnet ist?
Hallo, eine Möglichkeit wäre
am 17.04.2012 - 08:42 Uhr
Hallo,
eine Möglichkeit wäre das File nur über den User URL auszuliefern.
http://meinedomain/user/__UID__/anstellungsvertrag.pdf
So kann dann nur der User mit der entsprechenden UID darauf zugreifen.
Eine andere (per .htaccess) ist hier zu finden:
http://drupal.org/node/540754
LG
Ok, durch alle Infos zusammen
am 17.04.2012 - 09:28 Uhr
Ok,
durch alle Infos zusammen konnte ich das Problem lösen.
Mit Hilfe des Content Access Moduls und der Einstellung des privaten Filesystems, werden Dateien, die von einem anderen Benutzer hochgeladen werden, tatsächlich "versteckt". Wenn nun (s.o.) Benutzer B die URL der Datei, die Benutzer A hochgeladen hat aufruft, kommt "Zugriff verweigert".
Perfekt! Vielen Dank!