在Django admin中,我錯誤地通過嘗試輸入錯誤的密碼來鎖定自己。 我稍後刪除了用戶,並使用manage.py createsuperuser創建了另一個用戶。不過,它仍然說我被鎖定了。我如何解鎖自己?Django管理員如何解鎖自己的帳戶?
當我嘗試登錄使用Django管理它提供了以下錯誤..
帳戶鎖定:太多的登錄嘗試。聯繫管理員解鎖您的帳戶。
在Django admin中,我錯誤地通過嘗試輸入錯誤的密碼來鎖定自己。 我稍後刪除了用戶,並使用manage.py createsuperuser創建了另一個用戶。不過,它仍然說我被鎖定了。我如何解鎖自己?Django管理員如何解鎖自己的帳戶?
當我嘗試登錄使用Django管理它提供了以下錯誤..
帳戶鎖定:太多的登錄嘗試。聯繫管理員解鎖您的帳戶。
鑑於您的錯誤消息和3個打擊策略,我假設您的項目中有django-axes。無論用戶身在何處,您都可能會將其配置爲通過IP進行阻止。這將解釋爲什麼創建一個新用戶不起作用。
Djang-axes documentation爲您提供瞭如何清除鎖定的大綱。
manage.py axes_reset
將重置所有鎖定和訪問記錄。
如果您目前正在生產中,不希望冒險重置任何有效的停工,你可以嘗試重置的只是你的IP
manage.py axes_reset ip will clear lockout/records for ip
因此,例如上,如果您已登錄到服務器所在的同一臺計算機上,則可以使用localhost: manage.py axes_reset ip 127.0.0.1
如果對於某些原因不起作用,您仍然可以從數據庫中手動刪除AccessAttempt
。這當然假設你有權訪問你的數據庫,你的用戶有刪除權限,你對SQL很熟悉,並且你沒有改變django-axes的默認表名。
delete from axes_accessattempt where username ='your_username';
其中'your_username'是您希望解鎖的帳戶。
這也可以通過ip完成: delete from axes_accessattempt where ip_address='your_ip';
其中'your_ip'是您正在使用的計算機的IP地址。
沒錯這裏是我做到了..去使用python manage.py shell
有輸入以下命令外殼
from axes.models import AccessAttempt
AccessAttempt.objects.all().delete()
如果需要,不過數據,那麼你必須通過
只刪除包含您的用戶名對象for obj in AccessAttempt.objects.all():
if obj.username == your_username:
obj.delete()
在默認情況下,django中沒有任何東西會鎖定一個帳戶,所以你到底在使用什麼? – Sayse
當您嘗試登錄時,Django-admin ..我錯誤地輸入了錯誤的密碼,嘗試了3個不同的密碼。我後來刪除了用戶,並創建了另一個使用manage.py createsuperuser,但它仍然不起作用 –
默認情況下,django中有* nothing *將鎖定一個帳戶 – Sayse