About¶
django-trench provides a set of REST API endpoints to supplement django-rest-framework with multi-factor authentication (MFA, 2FA). It supports both standard built-in authentication methods, as well as JWT (JSON Web Token).
We deliver a couple of sample secondary authentication methods including sending OTP based code by email, SMS/text as well as through 3rd party mobile apps or utilising YubiKey. Developers can easily add their own auth backend supporting any communication channel.
Features¶
Easily pluggable and compatible with django-rest-framework
Allows user to pick an additional authentication method from range of backends defined by a developer. Read more: backends
Comes out of a box with email, SMS, mobile apps and YubiKey support
Requirements¶
Python
Django
Django REST Framework
Supported versions¶
Python 3.7, 3.8. 3.9
Django 2.x, 3.x,
Django REST Framework >= 3.9
Quick Start¶
Install the package using pip:
pip install django-trench
or add it to your requirements file.
Add
trench
library to INSTALLED_APPS in your app settings file:
INSTALLED_APPS = (
...,
'rest_framework',
'rest_framework.authtoken', # In case of implementing Token Based Authentication
...,
'trench',
)
Run migrations
Read further in: installation.
Translation¶
Trench uses Transifex service to translate our package into other languages.
We will appreciate your help with translation.