django-clamd 是一个与Clamd (Clamav守护进程) 集成的Django框架。
项目描述
此项目将python-clamd与Django集成,以便在文件上传时轻松扫描病毒。
安装
使用pip从PyPi安装
pip install django-clamd
或者
easy_install django-clamd
您还可以直接从GitHub安装开发版本
pip install git+https://github.com/vstoykov/django-clamd.git
另外,如果您想使用翻译,则需要将其添加到已安装的应用程序中。
INSTALLED_APPS = (
...
'django_clamd',
...
)
另外,如果您正在使用Ubuntu,为了让django-clamd正常工作,需要安装clamav-daemon。
sudo apt-get install clamav-daemon
用法
您可以在表单中使用它
from django import forms
from django_clamd.validators import validate_file_infection
class UploadForm(forms.Form):
upload_file = forms.FileField(validators=[validate_file_infection])
或者,您可以直接在模型中将它作为验证器添加
from django.db import models
from django_clamd.validators import validate_file_infection
class FileModel(models.Model):
document = models.FileField(validators=[validate_file_infection])
您将在Django管理界面自动扫描上传的文件,以及为该模型创建ModelForm时。
配置
默认情况下,django-clamd
尝试智能操作并使用良好的默认值。您仍然可以配置如何连接到Clamd。默认值如下
CLAMD_SOCKET = '/var/run/clamav/clamd.ctl'
CLAMD_USE_TCP = False
CLAMD_TCP_SOCKET = 3310
CLAMD_TCP_ADDR = '127.0.0.1'
注意:当您在Fedora或CentOS上运行,并且已安装clamav-scanner
软件包时,CLAMD_SOCKET
的默认值是
CLAMD_SOCKET = '/var/run/clamd.scan/clamd.sock'
默认情况下,如果无法联系ClamD或扫描失败,则此软件包将允许文件。如果您想在这些情况下使验证失败,请更改CLAMD_FAIL_BY_DEFAULT
CLAMD_FAIL_BY_DEFAULT = True
您还可以使用以下命令禁用开发中的病毒扫描:
CLAMD_ENABLED = False
注意:这主要是为了便于在开发环境中运行项目,而无需在开发机上安装Clamd。
许可证
django-clamd作为开源软件发布,遵循LGPL许可协议。
项目详情
下载文件
下载您平台上的文件。如果您不确定选择哪个,请了解有关安装软件包的更多信息。
源分布
django_clamd-1.0.0.tar.gz (7.6 kB 查看哈希值)
构建分布
django_clamd-1.0.0-py3-none-any.whl (9.7 kB 查看哈希值)
关闭
django_clamd-1.0.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 106429a71db571b570c88493115891a5472623263d25ebe7f92bead6c2f04e81 |
|
MD5 | c5ec6ad1ab48b62e5a58a63318b2358c |
|
BLAKE2b-256 | 21a9b99c82906edb502eed580c1b8d93ce6efd540e48f7d5eb757921885c9b11 |
关闭
django_clamd-1.0.0-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | ee2d46ed535355aa0840f93dd8468bf9e2236e2a54ea2affa956e5c9326e328a |
|
MD5 | 826b5f89384f6d601f2c27b490f0dfda |
|
BLAKE2b-256 | 994c369fc0bae4ba3da0fcfd41f5e43a6929b119d8d4211c7ae36ac5453706ec |