一个django中间件,允许在允许的主机中使用cidr ip范围。
django-allow-cidr的Python项目详细描述
一个django中间件,允许在允许的主机中使用cidr ip范围。
快速启动
安装django allow cidr:
pip install django-allow-cidr
将中间件添加到中间件类(对于django<;1.10)或中间件设置中。 它应该是列表中的第一个:
MIDDLEWARE=('allow_cidr.middleware.AllowCIDRMiddleware',...)
添加“允许的CIDR网络”设置:
ALLOWED_CIDR_NETS=['192.168.1.0/24']
利润!
功能
- 正常的允许的主机值也将按预期工作。这个中间件旨在增强, 不替换,正常的django函数。
- 如果您确实定义了允许的cidr网络并且它有值,那么中间件将捕获您在允许的主机中所拥有的内容, 将允许的主机设置为['*']并接管主机头的验证。
- 允许的cidr网络值可以是netaddr包的任何有效网络定义。
运行测试
代码真的有用吗?
source <YOURVIRTUALENV>/bin/activate (myenv) $ pip install tox (myenv) $ tox
历史记录
0.3.1(2018-07-31)
- 修复问题6:django中中间件的accept passed inget_response函数=1.10。
- 发布更新的文档,以修复允许的cidr网络中的打印错误。
0.3.0(2018-02-21)
- 如果允许的主机设置为['*'],则禁用中间件。
0.2.0(2018-02-21)
- 使用端口处理主机名(谢谢Giorgos!).
0.1.0(2018-02-16)
- pypi上的第一个版本。