我正在django開發一個站點,需要用不同的用戶配置文件登錄才能測試它。目前我將我數據庫中所有用戶的密碼設置爲一個django解密並解釋爲「1234」的字符串。 爲了避免這種情況,我在下面的函數中封裝了默認的登錄名。生產這個代碼是否安全?在開發環境中繞過登錄安全嗎?
def login(request, redirect_field_name=REDIRECT_FIELD_NAME, *args, **kwargs):
from django.contrib.auth.views import login as django_login
from django.contrib.auth import login as auth_login
if settings.DEBUG:
redirect_to = request.POST.get(redirect_field_name, request.GET.get(redirect_field_name, ''))
if request.method == "POST":
user = request.POST.get('username', '')
user = Usuario.objects.filter(cpf=user)
if user.exists:
user = user.first()
user.backend = 'django.contrib.auth.backends.ModelBackend'
auth_login(request, user)
return HttpResponseRedirect(redirect_to)
return django_login(request, *args, **kwargs)
不要忘記從外部窺探中保護開發環境:您認爲這只是開發,並且只能由您使用,但如果它對o即使在非標準的端口上,它也會被機器人黑客入侵。 因此,我從來沒有推薦過短切密碼或安全。 – pbuck