阻止对Django管理页的访问,除非请求来自特定的IP地址
django-adminrestrict的Python项目详细描述
要求
django-adminrestrict需要django 1.4或更高版本。这个 应用程序旨在提高django管理员周围的安全性 登录页面。
安装
使用one以下方法下载并安装django-adminrestrict:
PIP
您可以安装运行此命令的最新稳定包:
$ pip install django-adminrestrict
设置工具
您可以安装最新的稳定包,运行:
$ easy_install django-adminrestrict
开发
您可以参与这个项目,从github分叉并发送pull请求。
配置
首先,必须将此项目添加到中的INSTALLED_APPS列表中 settings.py:
INSTALLED_APPS = ( 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', ... 'adminrestrict', ... )
接下来,安装FailedLoginMiddleware中间件:
MIDDLEWARE_CLASSES = ( 'django.middleware.common.CommonMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'adminrestrict.middleware.AdminPagesRestrictMiddleware', )
在数据库中创建操作所需的适当表。
对于django(<;1.7),运行python manage.py syncdb。
对于django(>;=1.7),运行python manage.py makemigrations adminrestrict; python manage.py migrate。
重要提示:在项目中配置包时,会出现一个名为allowedip的空表 将在数据库中创建。如果此表为空或有一条记录 a“*”软件包不会限制任何IP。如果要添加特定限制 请转到下一节。
用法
使用django-adminrestrict非常简单。安装应用程序后 而中间件,您只需更新允许的IP地址allowedIP 管理页面的部分。
添加允许的IP地址
登录到管理页面并浏览到adminrestrict应用程序,然后 开始在allowedip表中创建记录。只需输入IP 地址和保存记录。
使用通配符添加允许的IP地址
创建一个以“*”结尾的允许IP条目 用指定的图案。例如,添加192.*将允许 addres开始匹配192.*.*以登录到管理页面。
添加*以禁用所有限制
创建一个以“*”作为IP地址的允许IP记录,以 暂时禁用限制。这样,你就不必 如果需要禁用,请修改settings.py并删除中间件。
至少有一个允许的IP地址为*的记录 有效地禁用所有限制。