leuchtfeuer / secure-downloads
"安全下载":将TYPO3访问权限应用于所有文件资源(PDFs,TGZs或JPGs等。- 可配置)- 保护它们免受直接访问。
Requires
- php: ^8.1
- ext-pdo: *
- firebase/php-jwt: ^6.1
- typo3/cms-backend: ^12.4
- typo3/cms-core: ^12.4
- typo3/cms-extbase: ^12.4
- typo3/cms-frontend: ^12.4
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.10
- typo3/coding-standards: ^0.7.1
- typo3/testing-framework: ^8.0.1
Suggests
- ext-fileinfo: For getting mime types from file path.
Replaces
- bitmotion/secure-downloads: v6.0.4
- typo3-ter/secure-downloads: v6.0.4
- dev-master
- v6.0.4
- v6.0.3
- v6.0.2
- v6.0.1
- v6.0.0
- v6.0.0-rc1
- v5.0.6
- v5.0.5
- v5.0.4
- v5.0.3
- v5.0.2
- v5.0.1
- v5.0.0
- v5.0.0-rc1
- v5.0.0-beta2
- v5.0.0-beta
- v4.1.6
- v4.1.5
- v4.1.4
- v4.1.2
- v4.1.1
- v4.1.0
- v4.0.0
- v3.0.3
- 3.0.2
- 3.0.1
- 3.0.0
- 2.0.6
- 2.0.5
- 2.0.4
- 2.0.3
- 2.0.2
- 1.8.0
- dev-release-5.x
- dev-bugfix/gh-212
- dev-bugfix/TER-236
- dev-bugfix/TER-194
- dev-feature/TER-187
- dev-feature/TER-187-v12
- dev-feature/TER-166
- dev-bugfix/TER-158
- dev-feature/TER-137
- dev-feature/TER-151
- dev-bugfix/TER-144
- dev-bugfix/TER-143
- dev-bugfix/TER-139
- dev-bugfix/TER-142
- dev-feature/TER-133
- dev-bugfix/TER-124
- dev-feature/TER-108
- dev-release-4.x
- dev-release-2.0.x
- dev-release-3.x
This package is auto-updated.
Last update: 2024-09-23 12:49:48 UTC
README
TYPO3扩展 "Secure Downloads"
在TYPO3中,像PDFs、TGZs或JPGs等资产通常只是通过URL进行引用,例如 fileadmin/...
。文件本身是由Web服务器直接提供的,因此不属于TYPO3访问控制方案的一部分——文件保持未受保护,因为URL可以被重用、通过电子邮件发送、搜索引擎包含或甚至猜测。
"Secure Downloads"扩展(EXT:secure_downloads
)改变了这种行为:现在将通过一个尊重TYPO3访问权限的脚本来访问文件。转换后的URL将如下所示
https://www.example.com/securedl/sdl-eyJ0eXAiOiJKV1QiLCJhbGciO[...]vcM5rWxIulg5tQ/protected_image.jpg
这适用于来自任何地方的文件,并且不仅限于特殊插件等。
由于在大多数情况下您可能不想保护一切(这意味着所有内容都要进行性能消耗较大的访问权限检查),因此Secure Downloads具有高度的可配置性。您可以
- 选择要保护的目录(例如,您可以选择包含或排除typo3temp)
- 选择要保护的文件类型(您想要保护JPGs吗?等。)
作为补充措施,您当然需要配置您的Web服务器不要直接提供这些内容(例如,使用 .htaccess 设置)。
需求
我们目前支持以下TYPO3版本
- 1) 即将发布的版本作为
leuchtfeuer/secure-downloads
(供应商名称已更改)。
过时版本
对于以下版本,作者将不再提供免费的错误修复和新功能
- 2) 作为
EXT:naw_securedl
或typo3-ter/naw-securedl
。
安装
有几种方法可以要求并安装此扩展。我们建议通过 composer 获取此扩展。
通过Composer
如果您的TYPO3实例正在运行在composer模式下,您只需通过运行以下命令来要求扩展
composer req leuchtfeuer/secure-downloads:^6.0
通过扩展管理器
打开您的TYPO3实例的扩展管理器模块,在上传按钮上方的选择菜单中选择“获取扩展”。在那里您可以搜索 secure_downlaods
并简单地安装扩展。请确保您在安装Secure Downloads扩展之前通过更新扩展列表使用扩展的最新版本。
通过ZIP文件
您需要从 TYPO3扩展存储库 下载Secure Downloads扩展,并将其ZIP文件上传到您的TYPO3实例的扩展管理器,并在之后激活扩展。您也可以从 GitHub 下载存档,并将其内容直接放入您的TYPO3实例的 typo3conf/ext
目录中。但请注意,文件夹名称必须是 secure_downloads
(存储库名称将是默认值)。
配置
安装完成后,您需要配置此扩展。请参阅官方文档的相应部分:手册。
最佳实践
您可以配置此扩展以满足您的特定需求。然而,以下是一些在使用Secure Downloads时的“最佳实践”:
- 按照上述描述安装此扩展
- 在您的TYPO3实例的页面0上创建一个新的“文件存储”,类型为“本地文件系统”,并将“是否公开可用?”选项设置为不公开
- 在您的文件系统上创建一个目录,该目录与之前配置的“基本路径”相匹配
- 在该文件夹中放入一个
.htaccess
文件,拒绝访问此路径下及其下所有文件 - 在TYPO3后端的管理部分配置扩展,以匹配新创建的文件存储中的所有文件(使用星号
*
作为securedFiletypes选项的占位符),以及匹配securedDirs选项的路径。
访问配置
您还需要通过服务器配置来保护所有目录和文件类型。这可以通过.htaccess
文件来实现。一些示例.htaccess
文件可以在Resources/Private/Examples文件夹中找到。
注意:此扩展无法保护您在CSS文件中包含的文件的链接。例如,您可以通过将文件放在/fileadmin
中来使用默认的.htaccess_deny
文件来保护/fileadmin
。您可以通过将文件放在/fileadmin/template/
中来使用默认的.htaccess_allow
文件来允许访问/fileadmin/templates/
。
文档
有关此扩展的详细文档,请参阅官方TYPO3文档。
变更日志
变更日志可以在本扩展的官方TYPO3文档的变更日志章节中找到。
贡献
您可以通过向此存储库的master分支提交pull request,使用此页顶部的“❤️赞助”按钮,或者简单地给我们一些啤酒 🍻来做出贡献...