ferdynator / clamav-constraint
此仓库为基于 Symfony 的项目提供病毒扫描验证约束。
1.0.0
2018-11-16 16:51 UTC
Requires
- php: >=7.2
- symfony/http-foundation: *
- symfony/validator: *
- xenolope/quahog: ^2.1
Requires (Dev)
- phpunit/phpunit: ^7.3
This package is auto-updated.
Last update: 2024-09-17 10:05:24 UTC
README
这是一个用于文件上传的定制 Symfony 抗病毒验证器。它使用 Quahog 库连接到正在运行的 clamav Unix 套接字,并扫描上传的文件。
此仓库深受 laravel 的 clamav-validator 和 TissueBundle 的影响。
安装
composer require ferdynator/clamav-constraint
请确保您已安装 ClamAv
。
用法
将此约束添加到您选择的实体中
use ferdynator\ClamAvConstraint\Validator\Constraints as VirusAssert;
class JobImage {
...
/*
* ...
* @VirusAssert\ClamAv
*/
protected $file;
...
}
配置
备用套接字
如果您没有使用 Unix 套接字,或者它位于非标准位置,您可以传递一个备用的套接字 URL。
/*
* ...
* @VirusAssert\ClamAv(
* socket="tcp://0.0.0.0:1234"
* )
*/
protected $file;
文件权限
clamav
守护进程需要读取上传文件的权限。您可以使用约束的 chmod
选项指定 chmod 模式。
/*
* ...
* @VirusAssert\ClamAv(
* chmod=0600
* )
*/
protected $file;