django_tfa є додаток Django, яке реалізує двофакторної аутентифікації на основі contrib.auth Джанго.
Одноразово Жетони створюються за допомогою onetimepass Томаш (в https://github.com/tadeck/onetimepass). Цей модуль вже включений в дистрибутив (файл: otp.py). Django_tfa використовує TOTPs (на основі часу одноразові паролі) з base32 закодований таємниці. Це повністю сумісний з Google Authenticator (скачати з http://code.google.com/p/google-authenticator/) і, можливо, іншими додатками.
Установка
Devel:
Git клон Git: //github.com/lusentis/django_tfa.git
Судо пітон setup.py встановити
Стабільний:
Судо easy_install django_tfa
Налаштування
1. Додати twofactor в свій список INSTALLED_APPS.
& NBSP; INSTALLED_APPS = (... 'twofactor', ...)
2. баз даних Синхронізація (опціонально: використання південь)
НЕ & NBSP; # не так на південь:
І NBSP; ./ manage.py SyncDB
І NBSP; # південь (рекомендується):
І NBSP; ./ manage.py schemamigration --initial twofactor
І NBSP; ./ manage.py SyncDB
І NBSP; ./ manage.py мігрувати
1. Додати в деяких місцях (необов'язковий, за замовчуванням показані)
І NBSP; від twofactor.callbacks імпортувати everyone_must_have_otp
І NBSP; TWOFACTOR_ENABLED_CALLBACK = everyone_must_have_otp
І NBSP; TWOFACTOR_ENABLE_AT_FIRST_LOGIN = True
І NBSP; TWOFACTOR_TOKEN_LENGTH = 32
1. Додати входу і виходу шаблони (те ж саме ви використовуєте з contrib.auth)
2. Додати twofactor URL-адреси в кореневу urls.py
І NBSP; гіперпосилання (г '^ Увійти / $', 'twofactor.views.login_view', {'template_name': 'login.html'},
І NBSP; NAME = "Логін"),
І NBSP; гіперпосилання (г '^ Увійти / ТФК $', 'twofactor.views.login_twofactor', {'template_name': 'login_twofactor.html'},
І NBSP; ім'я = 'login_twofactor'),
І NBSP; гіперпосилання (г '^ Увійти / ТФК / включити $', 'twofactor.views.twofactor_enable',
І NBSP; ім'я = 'login_twofactor_enable'),
Ви повинні замінити існуючі / логін / URL з django.contrib.auth.
1. Додати трохи користувачів з Django адміністратора або ./manage.py оболонки
Помилки
- Пост-Логін редирект не обробляються коректно, так що ви повинні мати urlpattern назвою "додому", що є, де ви хочете, щоб reidrected після входу в систему.
- Введення URL-адреси twofactor в окремому файлі (наприклад, twofactor.urls) порушує функцію URLconf зворотний ... чому?
Зразок
Клонувати цей репозиторій і виконайте команду:
./manage.py SyncDB
./manage.py runserver
і вказати ваш браузер на HTTP: // локальний: 8000
Вимоги
- Python
- Django
Коментар не знайдено