Monday, 30 November 2020

how to use django 3 with django-otp to send token sms using SMS service provider for user verification and redirecting to password reset form?

I have only been able to make the following changes in django code:

settings.py: added along with other apps added in

INSTALLED_APPS = [
 .....
    'django_otp',
    'django_otp.plugins.otp_totp',
]

In additions to other middleware configurations, added:

MIDDLEWARE = [
    'django_otp.middleware.OTPMiddleware',
]

urls.py:

from django_otp.admin import OTPAdminSite
from django_otp.plugins.otp_totp.models import TOTPDevice

admin_site = OTPAdmin(name='OTPAdmin')
admin_site.register(User)
admin_site.register(TOTPDevice)

urlpatterns = [
    path('admin/', admin_site.urls), #otp app
    path('dadmin/', admin.site.urls),
]

Then I ran: $ python3 manage.py migrate otp_totp --fake and runserver. Created a user and totp device. Scanned the qr code in google authenticator. Then tried logging in using the admin url to login for this new user. It asks for the token generated which I input, it says invalid token though user is authenticated. Seen other posts where the secret code needs to be converted to 32basecode etc, but don't know exactly and where to implement. What more code needs to be added to get this working? I will require detailed code and steps for my use case where i need to change the time for generating the code and send via sms using my service provider api and redirect to password reset form.

Using django 3.1, django-otp 1.0.2 My google authenticator works with my gmail account, so there is no clock time difference either.



from how to use django 3 with django-otp to send token sms using SMS service provider for user verification and redirecting to password reset form?

No comments:

Post a Comment