[gelöst] Dowload von Dateien über Links schützen
Eingetragen von alex1981 (57)
am 06.12.2013 - 09:08 Uhr in
am 06.12.2013 - 09:08 Uhr in
Hallo,
ich kleines Problem mit Links.
Ich beschreibe mal die Aufgabe:
Es gibt einen Benutzterbereich (wo man sich einloggen muss), in dem Dokumente hinterlegt sind. Diese sind auf der Seite über einen einfach HTML-Link zu erreichen.
Jetzt ist das Problem, das sie für nicht eingeloggte Benutzer,dieser nicht Funktionieren soll.
Das Dateisystem ist auf öffentlich gestellt.
Ich bin schon auf der Suche nach einem Eleganten weg, leider habe ich bisher keinen Gefunden.
Über Hinweise und Tipps wäre ich sehr Dankbar, egal welcher Weg. Es können auch andere Alternativen sein.
MfG
Alex
- Anmelden oder Registrieren um Kommentare zu schreiben
Dann musst Du das Dateisystem
am 06.12.2013 - 10:21 Uhr
Dann musst Du das Dateisystem auf privat stellen, das private Verzeichnis sollte außerhalb des Docroot vom Server liegen
sense-design | online solutions | Do not hack core!
Drupalcenter Verhaltensregeln | Threads bitte auf [gelöst] stellen.
das Dateisystem auf nichtöffentlich stellen
am 06.12.2013 - 10:22 Uhr
und entsprechende Userrollen anlegen.
Je nach Komplexität kann die Standardrechteverwaltung, content_access, ACL oder sogar OG das Übrige übernehmen.
Grüße
Ronald
Dateisystem umgestellt, trotzdem gleicher Effekt
am 06.12.2013 - 10:59 Uhr
Hallo,
habe es auf meinem Testsystem auf das Private umgestellt. Das Private Verzeichnis ist auf "sites/default/files/privat" gestellt.
Als Rechte Verwaltung setzte ich "Simple Access". Mit" content_access" und "ACL" habe Problem mit der Einstellung.
Über einen Tip, wie sie richtig eingestellt werden würde ich mich dann auch freuen.
Was ich vergessen habe, es laufen mehrere Seiten mit einem Drupal System. Jede von ihnen hat aber eine eigene Datenbank.
MfG
Alex
Damit die Dateien NICHT über den Browser erreichbar sind,
am 06.12.2013 - 11:12 Uhr
sollte der Speicherort außerhalb des WEB-Bereiches liegen.
Normalerweise ist ein Webspace so eingerichtet, dass der WEB-Bereich in einem Verzeichnis http_files oder ähnlich liegt, dar FTP jedoch ein Verzeichnis parallel dazu erlaubt.
Dort solltest du das Verzeichnis für private Dateien ablegen, damit sie vom WEB-Server nicht auslieferbar sind.
Dieses Verzeichnis braucht aber die vollen Rechte für den Internetuser.
Da aber auf dieses Verzeichnis nur mit einer Funktion zugegriffen werden kann, weil es physisch nicht ansprechbar ist, sind die Dateien, obwohl sie quasi jeder lesen und schreiben könnte, dennoch geschützt.
Grüße
Ronald
Versuch es mal mit IMCE
am 06.12.2013 - 11:45 Uhr
Ich hatte das gleiche Problem. Dateien, die nur von bestimmten Benutzern gesehen werden sollen. In Drupal6 war der Weg über WebFM eine sehr gute Lösung, leider nicht für Drupal7 verwendbar. Also habe ich einfach mal das Modul IMCE "missbraucht". Das Modul ist normalerweise für die Bilderverwaltung gedacht. Es kann aber auch über den User-Account eingebunden werden. IMCE hat eine eigene Benutzerrollenverwaltung. Über diese kannst Du die Verzeichnisstruktur bestimmen und Benutzern auch Zugriff auf verschiedene Schwester-Verzeichnisse samt Unterverzeichnissen geben. Ist ein wenig Arbeit und Du solltest die Abmessungen von Bildern im Auge behalten, denn eigentlich ist das Modul für die Bilderverwaltung gedacht. Ich konnte das über die Entfernung der Vorgaben für die Bildformate abschalten.
Ich konnte mein Problem mit IMCE gut lösen. Es ist für Benutzer sogar möglich, dort Dateien hochzuladen und somit einen geschützten Dokumentenaustausch anzubieten, alles eine Frage der Rechteverwaltung. Ist zwar etwas triggy, da Du mit den Drupal-Benutzerrollen und den IMCE-Benutzerrollen arbeiten musst, aber gut händelbar für den Endnutzer. Wenn die Dokumente gut geschützt sein sollen, dann kannst Du den Dateipfad auch im privaten Downloadbereich nutzen. Du kannst ja den Pfad für die Dokumentenroot pro IMCE-Rolle festlegen und sogar hier öffentliche und private Downloadbereiche mischen.
Gruß 2be
Zitat:"Ich habe die Länge und Breite dieses Landes bereist und mit den besten Leuten geredet, und ich kann Ihnen versichern, daß Datenverarbeitung ein Tick ist, welcher dieses Jahr nicht überleben wird.“ Editor für Computerbücher bei Prentice Hall, 1957.
Probleme mit der Einstellung
am 10.12.2013 - 09:53 Uhr
Hallo 2b,
danke für den Tipp.
Habe s versucht umzusetzen, aber so richtig weiter bin ich nicht gekommen.
Ich habe es zwar jetzt geschafft, die Datei vor externen zugriffen zu schützen, aber auch vor dem eigenen.
Irgendwie habe ich ein Verständnis Problem wie ich es genau einsetzten soll. Außerdem bin ich mir auch nicht so sicher wie ich den Server in der Konfiguration anpassen soll.
Es wäre schön, wenn du deine Einstellungen schicken könntest.
Danke im Voraus.
MfG
Alex
D7 private Files Grundlagen
am 10.12.2013 - 11:09 Uhr
Seit Drupal 7 ist es erfreulicherweise möglich einen Parallelbetrieb zwischen Public und Private Files zu haben. Eine globale Umstellung gibt es nicht mehr. Was man dort einstellt ist nur die "Default download method". Die eigentliche Einstellung erfolgt per Field. Ein späterer Wechsel ist dort problematisch.
Der private Ordner kann auch unterhalb des Webroots liegen, allerdings muss man drauf achten, daß der Webserver die Privatheit auch akzeptiert. Die Standard-.htaccess von Drupal in Kombination mit einem Apache Webserver funktioniert. Nur gibt es auch andere Webserver-Arten, die andere Konfigurationen benötigen und die .htaccess sollte bei "Umzügen" auch nicht verloren gehen usw. Wenn das alles sauber funktioniert kann der Zugriff auf Files gut per Rollen, Organic Groups, Content Access usw. gesteuert werden.
# DrupalCenter-Moderator # https://www.drupal.org/u/c-logemann
# CTO der Nodegard GmbH: Tech. Concepts | Security + Availability Operations / Wir unterstützen IT-Abteilungen, Agenturen, Freiberufler:innen
Anpassen der .htaccess richtig?
am 11.12.2013 - 09:12 Uhr
Habe die .hacess angepasst.
Wenn ich es richtig verstanden habe, dann muss man in der .htaccess „Require group“ eintragen? Meine Benutzerrollen, in Drupal, habe Teilweise lehrzeichen. Ist das ein Problem?
Die .htaccess liegt in dem Privaten Ordner. Ist auch richtig?
Als Rechte-Management Tool setzte ich Simple Access ein. Beist sich es mit Content Access?
alex1981 schrieb Ich habe es
am 11.12.2013 - 15:35 Uhr
Ich habe es zwar jetzt geschafft, die Datei vor externen zugriffen zu schützen, aber auch vor dem eigenen.
Kann es sein, dass Du nicht User-1 bist? Nur User-1 darf die Rechte der IMCE-Benutzerrolle User-1 ändern. Ist mir eben beim Nachschauen in einem Projekt passiert. Ich bin dort zwar Mitglied der Administrator-Rolle und die Drupal-Administratorrolle dem IMCE-Profil User-1 zugeordnet, aber ich kann das User-1 Profil nicht ändern - keine Zugriffsberechtigung.
Irgendwie habe ich ein Verständnis Problem wie ich es genau einsetzten soll. Außerdem bin ich mir auch nicht so sicher wie ich den Server in der Konfiguration anpassen soll.
Zum Server hast Du ja Antwort bekommen. Was verstehst Du denn konkret nicht bei IMCE? Alle Einstellungen kann ich dir hier nicht posten. Beschreib mal, was Du vorhast und wo es hängt, dann hake ich da gerne ein.
Gruß 2be
Zitat:"Ich habe die Länge und Breite dieses Landes bereist und mit den besten Leuten geredet, und ich kann Ihnen versichern, daß Datenverarbeitung ein Tick ist, welcher dieses Jahr nicht überleben wird.“ Editor für Computerbücher bei Prentice Hall, 1957.
Ich habe ein ähnliches
am 11.12.2013 - 23:12 Uhr
Ich habe ein ähnliches Problem mit https://drupal.org/project/private_files_download_permission lösen können. Ich habe die Standard-Download-Methode auf öffentlich stehen und mit dem Modul einzelne Verzeichnisse innerhalb des privaten Dateisystempfads für div. Rollen freigegeben unter admin/config/media/private-files-download-permission.
Funzt bei mir super und für Besucher oder Benutzer ohne die Rollen (nur durch den URL-Aufruf) kommt auch keine Download-Möglichkeit.
Beste Grüße
Marco
– Grüße aus Franken –
"Eine Entscheidung ist dann eine gute Entscheidung, wenn Sie zu mehr Möglichkeiten führt.”
Heinz von Foerster (Kybernetiker)
www.bienlein-kommunikation.de
Es klappt jetzt
am 16.12.2013 - 13:47 Uhr
Hallo Marco,
dein Tipp hat mir geholfen. Allerdings musste ich das Dateisystem auf "private" stellen, dann hat es geklappt.
Jetzt ist die Einstellung erst mal auf dem Testsystem bei uns. Da schauen wir ob nicht ungewollte Seiteneffekte auftreten. Beim ersten Test habe ich nichts gefunden..
Diese Anleitung habe ich noch gefunden. Sie ist ein guter Leitfaden.
http://getlevelten.com/blog/randall-knutson/requiring-registration-downl...
Danke schon mal für eure Hilfe.
Las es erst mal noch nicht auf gelöst, weil die Test erst erfolgreich sein sollen.
MfG
Alex
Hat alles geklappt
am 24.02.2014 - 13:11 Uhr
Jetzt klappt alles so wie es soll.
Setzte es auf gelöst.