I’m implementing authentication in a Django site using the built-in auth module, including the built-in UserCreationForm
.
I’d like to set a minimum length for passwords. However, I can’t find any documentation on how to do this.
Can I configure the auth module’s User
module to require this at the database level? Or should I sub-class the UserCreationForm
(I’m actually doing this already for unrelated reasons) and add an extra validator that enforces the password length?
I think the easiest way to achieve this is using Django password validation
For minimum length would be enough adding this to settings file:
AUTH_PASSWORD_VALIDATORS = [
{
'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',
'OPTIONS': {
'min_length': 8,
}
},
]
There are others validators like NumericPasswordValidator
and CommonPasswordValidator