【发布时间】:2016-08-02 13:49:30
【问题描述】:
我正在查看django-otp 模块并希望在我的项目中实现它。但我面临几个问题。
1)根据docs(他们在docs中给出的方法),有三个级别的身份验证:Anonymous、Authenticated和Authenticated + Verified。如果用户已经通过 django 的身份验证系统进行了身份验证,那么他将被要求进行 otp 验证(双向身份验证)。
现在我想跳过它并仅通过 otp 验证/验证用户。代替登录提示,用户将输入电话号码并收到 otp 进行验证。(我想绕过 django 的身份验证)。
2) 我也想在选定的页面上使用otp_required。即,我的网站上将同时拥有匿名用户和经过验证的用户。
3) 我找不到任何关于实现的例子。
我的问题是如何在我当前的场景中实现它。
编辑:Settings.py
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'home',
'django_otp',
'django_otp.plugins.otp_totp',
'django_otp.plugins.otp_static',
]
MIDDLEWARE_CLASSES = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django_otp.middleware.OTPMiddleware',
'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
【问题讨论】:
-
这远远超出了 django-otp 的意图。听起来您想编写一个自定义的 Django 身份验证后端。
标签: python django authentication