django_tfa es una aplicación Django que implementa la autenticación de dos factores basada en contrib.auth de Django.
Uno Fichas Tiempo se generan usando onetimepass de Tomasz (https://github.com/tadeck/onetimepass). Este módulo ya está incluido en esta distribución (archivo: otp.py). Django_tfa utiliza TOTPs con Base32 codificado secretos (contraseñas de un solo basada en el tiempo). Es totalmente compatible con Google Authenticator (descarga de http://code.google.com/p/google-authenticator/) y tal vez otras aplicaciones.
Instalación
Devel:
git git clone: //github.com/lusentis/django_tfa.git
sudo python setup.py install
Estable:
sudo easy_install django_tfa
Configuración
1. Añadir de dos factores a su lista INSTALLED_APPS.
& Nbsp; INSTALLED_APPS = (... 'de dos factores', ...)
2. base de datos de sincronización (opcional: uso sur)
& Nbsp; # no al sur:
& Nbsp; ./ manage.py syncdb
& Nbsp; # sur (recomendado):
& Nbsp; ./ manage.py schemamigration --initial de dos factores
& Nbsp; ./ manage.py syncdb
& Nbsp; ./ manage.py migrar
1. Agregue un poco de configuración (opcional, por defecto se muestran)
& Nbsp; de twofactor.callbacks everyone_must_have_otp importar
& Nbsp; TWOFACTOR_ENABLED_CALLBACK = everyone_must_have_otp
& Nbsp; TWOFACTOR_ENABLE_AT_FIRST_LOGIN = True
& Nbsp; TWOFACTOR_TOKEN_LENGTH = 32
1. Añadir conexión y desconexión plantillas (el mismo que utiliza con contrib.auth)
2. Añadir urls de dos factores a su urls.py raíz
& Nbsp; url (r '^ login / $', 'twofactor.views.login_view', {'template_name': 'login.html'},
& Nbsp; name = 'login'),
& Nbsp; url (r '^ login / TFA $', 'twofactor.views.login_twofactor', {'template_name': 'login_twofactor.html'},
& Nbsp; name = 'login_twofactor'),
& Nbsp; url (r '^ login / TFA / habilitar $', 'twofactor.views.twofactor_enable',
& Nbsp; name = 'login_twofactor_enable'),
Es necesario sustituir su actual / login / url de django.contrib.auth.
1. Agregue un poco de usuarios de administración de Django o concha ./manage.py
Errores
- Post-inicio de sesión de redirección no se maneja correctamente, por lo que debe tener un patrón URL llamado "hogar" que es donde quieres estar reidrected después del inicio de sesión.
- Poner de urls de dos factores en un archivo separado (por ejemplo: twofactor.urls) rompe la función URLconf inversa ... ¿por qué?
Muestra
Clonar esta repo y ejecute:
syncdb ./manage.py
runserver ./manage.py
y apuntar su navegador a http: // localhost: 8000
Requisitos :
- Python
- Django
Comentarios que no se encuentran