如何使用偽造的管理員登入介面為 Django 管理介面新增額外的安全性?
我們將使用一個第三方包建立一個 Django 管理介面的偽造登入頁面。這隻會建立一個偽造的 Django 管理頁面,無論任何人嘗試使用正確或錯誤的密碼登入管理員頁面,都無法登入,並且他們的嘗試記錄(包括 IP 地址)將儲存在一個表中。
因此,只需按照以下步驟操作,您就可以順利完成。
設定基本的 **urls** 並將 **app** 新增到 **settings.py** 中的 **INSTALLED_APPS** 中。
示例
首先安裝包
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/ 上,您將看到以下輸出螢幕
這是一個偽造的蜜罐管理員頁面,無論您嘗試正確或錯誤,它仍然是偽造的,並將所有嘗試儲存到表中。如果您訪問 http://127.0.0.1/secret/ 並使用您的管理員使用者名稱和密碼登入:
在表中,您將獲得所有記錄。
廣告