Добавил django-axes

This commit is contained in:
Viner Abubakirov
2026-01-03 16:15:15 +05:00
parent 8c68dbda9f
commit dcd8dffff9
3 changed files with 145 additions and 109 deletions

View File

@@ -45,12 +45,17 @@ INSTALLED_APPS = [
'django.contrib.staticfiles',
# External apps
'storages',
'axes',
# Custom apps
'core',
'music',
]
MIDDLEWARE = [
# Third-party middlewares
'axes.middleware.AxesMiddleware',
"whitenoise.middleware.WhiteNoiseMiddleware",
# Default Django middlewares
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
@@ -60,7 +65,6 @@ MIDDLEWARE = [
'django.middleware.clickjacking.XFrameOptionsMiddleware',
# Custom middlewares
"core.middleware.current_request.CurrentRequestMiddleware",
"whitenoise.middleware.WhiteNoiseMiddleware",
]
ROOT_URLCONF = 'music_storage.urls'
@@ -97,6 +101,13 @@ DATABASES = {
}
}
# Authentication backends
# https://django-axes.readthedocs.io/en/latest/2_installation.html
# https://docs.djangoproject.com/en/6.0/ref/settings/#authentication-backends
AUTHENTICATION_BACKENDS = [
'axes.backends.AxesBackend',
'django.contrib.auth.backends.ModelBackend',
]
# Password validation
# https://docs.djangoproject.com/en/6.0/ref/settings/#auth-password-validators
@@ -160,3 +171,12 @@ STORAGES = {
"BACKEND": "django.contrib.staticfiles.storage.StaticFilesStorage",
}
}
# AXES Configuration
AXES_ENAVLED = False if DEBUG else True
AXES_FAILURE_LIMIT = 5
AXES_COOLOFF_TIME = 0.25 # in hours
AXES_LOCK_OUT_AT_FAILURE = True
AXES_VERBOSE = True
AXES_LOCKOUT_PARAMETERS = [["ip_address", "user_agent"]]