29.11.2010

TYPO3 Downloadverzeichnisse schützen

Sichere Downloads lassen sich für TYPO3 Dateilinks mit TypoScript einstellen. Das Downloadverzeichnis selbst wird mit htaccess geschützt, um den direkten Dateizugriff zu verhindern.

In das Downloadverzeichnis packen Sie z.B. eine Datei .htaccess und eine Datei htpasswd.

.htaccess

AuthName "Protected Area"
AuthType Basic
AuthUserFile /home/projekt/www/html/uploads/media/.htpasswd
require valid-user

Den Pfad könen Sie sich so anzeigen lassen:

pfad.php

<?php echo dirname(__FILE__); ?>

.htpasswd

user:verschluesseltespassword

Den Inhalt der Datei .htpasswd können Sie sich z.B. hier online erstellen.

Die Zugriffsrechte für Dateilinks in TYPO3 Webseiten werden über die normalen Zugriffsrechte gesetzt.

Um aber auf geschützte Verzeichnisse zugreifen zu können, muss der Downloadlink geändert werden.

TypoScript Setup

// generelle Einstellung

config {
    jumpurl = 1
    jumpurl.secure = 1
}

// für einzelne Extension usw.

plugin.tx_meineextension_pi1 {

fileLink {
        stdWrap.wrap = <tr>|</tr>
        // path kommt aus php datei
        //path =
        file.wrap = <td class="csc-uploads-fileName noborderbottom">|</td>
        icon = 1
        icon_link = 1
        icon.wrap = <td rowspan ="2" class="csc-uploads-icon">|</td>
        size = 1
        size.wrap = <td rowspan ="2" class="csc-uploads-fileSize">|</td>
        size.bytes = 1
        size.bytes.labels = " B| KB| MB| GB"
        jumpurl = 1
        jumpurl.secure = 1
        #jumpurl.secure.mimeTypes = pdf=application/pdf, doc=application/msword

}
 fileDescription.stdWrap.wrap = <tr><td class="csc-uploads-description nobordertop">|</td></tr>
 fileList.stdWrap.wrap = <table class="csc-uploads csc-uploads-1">|</table>

}

Getestet mit TYPO3 4.4


Kategorie: TYPO3, TypoScript, Extensionentwicklung, Entwickler, Admins