Django 1.4+ only
This library integrates the current Django "best of" PCI auth libraries into a single application, then fills in the gaps. Filling gaps may involve making additional decisions for you, as suggested by Django Documentation e.g.:
Or in some cases additional functionality may be provided by this library e.g.:
XXX Below not done
Before you use this library in your applications you may wish to demo its functionality. To do so, follow these steps:
$ virtualenv . $ bin/pip install django-pci-auth $ bin/django-admin.py syncdb --settings=django_pci_auth.settings $ bin/django-admin.py runserver --settings=django_pci_auth.settings
A list of libraries included:
A list of relevant articles:
This is a built-in feature in Django 1.4+. Documented here for convenience:
PASSWORD_HASHERS = ( # From https://docs.djangoproject.com/en/1.4/topics/auth/: # "[redacted] This means that Django will use the first hash in the list # to store all passwords, but will support checking passwords stored with # the rest of the hashes in the list. If you remove a hash from the list # it will no longer be supported. 'django.contrib.auth.hashers.PBKDF2PasswordHasher', 'django.contrib.auth.hashers.PBKDF2SHA1PasswordHasher', 'django.contrib.auth.hashers.BCryptPasswordHasher', 'django.contrib.auth.hashers.SHA1PasswordHasher', 'django.contrib.auth.hashers.MD5PasswordHasher', 'django.contrib.auth.hashers.CryptPasswordHasher', )
How many old passwords will you store? This feature will prevent users from using the same passwords over and over again; it will keep the last OLD_PASSWORD_STORAGE_NUM number of passwords around and remove anything older. E.g.:
OLD_PASSWORD_STORAGE_NUM = 4
This software is licensed under the same BSD license that Django is licensed under. See: LICENSE.
[1] | This feature is included with Django 1.4+ |
[2] | This feature is provided by django-passwords |
[3] | This feature is provided by django-axes |