Hallo,
Ich verwende das Album-Module.
Im Album-Template verwende ich zusätzlich CustomContent, um die Alben nur für registrierte Mitglieder anzeigen zu lassen.
Das funktioniert auch wunderbar.
Allerdings kann man ja die URL zum Bild direkt im Browser eingeben und somit die Bilder auch ohne Login sehen.
Wenn ich mit einer .htaccess-Datei den direkten Zugriff auf Dateien im Gallery-Ordner verbiete, können die Bilder generell nicht mehr vom Browser angezeigt werden. Egal ob man eingeloggt ist oder nicht.
Also d.h. ich kann sie weder direkt über die URL aufrufen, noch kann der Browser diese Bilder im Template darstellen.
Das Problem ist, dass nicht alle Alben nur für registrierte Mitglieder sind. Einige sollen auch frei für jedermann sein.
Ich kann also den Gallery-Ordner nicht einfach mit einem Passwortschutz versehen.
Gibt es eine Möglichkeit, den Zugriff auf die Bilder über die Adressleiste des Browsers zu unterbinden, sodass der Browser jedoch in der Lage ist die Bilder im Template anzuzeigen (sofern man eingeloggt ist)?
Zugriff auf Bilder schützen? Topic is solved
Re: Zugriff auf Bilder schützen?
Wie wäre es mit einer Trennung der Gallerien in verschiedene Unterordner?
Re: Zugriff auf Bilder schützen?
Hm, dann könnte man allerdings auch gleich ein anderes Modul bzw. Plugin verwenden, das explzit diesen bzw. jenen Ordner ausliest (oder verstehe ich Dich gerade falsch?).LeisureLarry wrote:
Wie wäre es mit einer Trennung der Gallerien in verschiedene Unterordner?
Der Vorteil vom AlbumModule besteht meiner Meinung nach darin, dass man sich das Sortieren der Bilder in Ordner und Unterordner und Vergabe von Zugriffsrechten für diesen oder jenen Ordner sparen kann.
Man packt die einfach alle auf den Server und sucht sich dann im Backend die entsprechenden Bilder für die einzelnen Alben aus.
Versuch mal einem Laien zu erklären, dass er für jede Art von Album noch einen neuen Ordner mit einem entpsrechenden .htaccess-Passwortschutz erstellen muss.
Gibt es evtl. eine Möglichkeit, das AlbumModule so zu modifizieren, dass es die zu schützenden Bilder in einen öffentlich zugänglichen temp-Ordner kopiert und von dort aus anzeigen lässt?
Und nachdem die Daten an den Browser gesendet wurden (evtl. noch ein paar Minuten später) oder nachdem der User sich ausgeloggt hat wieder zu löschen?
Noch besser wäre es, wenn man das ganze noch mit der UserId synchronisieren könnte, damit sich mehrere User, die sich zufällig das gleiche Bild anschauen nicht in die Quere kommen.
Damit würden geschützte Bilder doch tatsächlich nur für die Zeit des Zugriffs über einen registrierten Account existieren.
Danach nicht mehr.
Ist das zu viel des Guten oder wäre das machbar?
Ich würde es auch selber machen, allerdings kenne ich mich mit dem Modul nicht so gut aus.
Evtl. kann mir jemand sagen wo ich ansetzen kann?
Re: Zugriff auf Bilder schützen?
Stelle ich mir schwierig vor.hoshy wrote: ...
Gibt es evtl. eine Möglichkeit, das AlbumModule so zu modifizieren, dass es die zu schützenden Bilder in einen öffentlich zugänglichen temp-Ordner kopiert und von dort aus anzeigen lässt?
...
Wenn die Bilder irgendwohin kopiert werden sollen, dann müssen sie ja von irgendwem auch gelesen werden können.
Das klingt für mich schon wie ein direkter Zugriff auf ein Bild.
Versuch doch erstmal folgendes:
Gib dem Ordner, in dem die geschützten Bilder sind nur Zugriffsrechte für Gruppen und Besitzer.
Somit dürfte das Script auf diesen Ordner zugeifen können, der Browser jedoch nicht.
Evtl. brauchst Du auch eine .htaccess-Datei, die den direkten Zugriff auf Dateien in diesem Ordner verbietet. Aber das musst Du ausprobieren, kann auch sein, dass dadurch auch nix kopiert werden kann.
Dann erstelle ein PHP-Script, dass ein Bild aus diesem Ordner in einen anderen (mit vollen Zugriffsrechten) kopiert.
Wenn das funktioniert, dann dürfte Deinem Vorhaben nichts im Wege stehen.
Ansetzen würde ich beim Album-Module in der action.default.php.
Dort werden (wie in jedem Modul) die Standardfunktionen des Frontends ausgeführt.
Anstelle die Datenbank auszulesen, die entsprechenden Smarty-Variablen zu erstellen und danach das Template zu verarbeiten, muss bei Deiner Idee nach dem Auslesen der Datenbank erstmal rumkopiert werden.
Bei vielen Bildern stelle ich mir das allerdings recht Ressourcenlastig vor.
Ich würde allerdings die Thumbnails dann in einem separaten Ordner mit vollen Zugriffsrechten speichern lassen.
Die müssen ja nicht ständig kopiert bzw. wieder gelöscht werden.
Den Pfad zum Thumbnail kann man in der config-Datei des ImageManagers angeben.
Allerdings funktioniert dann das Album-Module nicht mehr korrekt, da der Pfad zum Thumbnail ebenso wie das Thumbnailpräfix hardcoded im Quellcode (selber Ordner; Präfix "thumb_") stehen. Da müsste man dann auch wieder Änderungen vornehmen.
Hab das schon als Bugreport gepostet.
Hat sich aber noch nichts getan.
Die Idee, geschützte Bilder nur für den Zeitpunkt des Zugriffs (mit einem entsprechenden Account) existieren zu lassen gefällt mir.
Hoffe auf eine hilfreiche Doku zu Deinem Vorhaben

Wenn Du Hilfe dazu brauchst, sag Bescheid.