如何使用伪管理员登录增加Django管理的额外安全性?
我们将使用第三方包制作Django管理员的伪登录页面。这只会创建一个Django管理员的虚假页面,无论任何人尝试在管理员页面上登录,无论他们输入正确或错误的密码,都无法登录,并且他们与IP地址的尝试将被存储在一个表中。
因此,只需按照下面给出的步骤,您就可以轻松完成。
设置基本的 URL 并在 settings.py 中添加 APP。
示例
首先安装此包:
pip install django-admin-honeypot
在 settings.py 中添加以下内容:
INSTALLED_APPS+ = ['admin_honeypot']
我们仅将其添加到已安装的应用程序中,这对于设置是必要的。
在项目的 urls.py 中:
from django.contrib import admin
from django.urls import path,include
urlpatterns = [
path(r'admin/', include('admin_honeypot.urls', namespace='
admin_honeypot')),
path(r'secret/', admin.site.urls),
]
在这里,我们只是将真正的管理员替换为虚假的管理员,并将我们自己的管理员放在另一个端点上。
运行这些命令:
python manage.py makemigrations
python manage.py migrate
现在您已经完成了所有工作,它将创建一个表,其中将存储所有尝试在管理员中登录的登录尝试及其会话ID,真正的管理员将位于 /secrets 端点。
输出
在 http://127.0.0.1/admin/, 您将看到以下输出屏幕。

这是一个虚假的honeypot管理员页面,无论您尝试做出正确的或错误的尝试,它仍然是虚假的,并将保存所有尝试的记录。 如果您转到http://127.0.0.1/secret/并使用您的管理员用户名和密码登录-

您将在表中获得所有记录。
极客教程