是否可以将2fa身份验证添加到Wagtail管理员登录页面。
答案 0 :(得分:1)
是的 - Wagtail管理员登录页面使用Django的内置身份验证框架,因此可以为Django合并任何各种2FA包,例如django-otp。如果您需要使用自定义视图替换登录页面,则可以通过在urls.py中为r'^admin/login/$'
定义URL路由来执行此操作,并确保将其放在r'^admin/'
的路由上方。
您还可以使用YubiKey设备查看wagtail-yubikey,这是一个Wagtail特定的解决方案。
答案 1 :(得分:0)
是的!带着一点点的朦胧。我的意思是,登录屏幕现在是一个简单的引导程序,而不是漂亮的wagtail。但是,这将为您提供大量选项,例如使用Google身份验证器。这就是我的所作所为:
此外:
{% url 'two_factor:profile' %}
中添加了/templates/wagtailadmin/account/account.html
的链接,以便用户进行管理。/templates/two_factor/profile/profile.html
中添加了一个回到管理员的链接,b / c它只是将人员转储到管理界面。在网址中,添加了以下内容:
from two_factor.admin import AdminSiteOTPRequired
from two_factor.views import LoginView
admin.site.__class__ = AdminSiteOTPRequired
# btw, AdminSiteOTPRequired will only lock the django admin in to a
# mandatory requirement, but not Wagtail and needs further work
urlpatterns += [
url(r'', include('user_sessions.urls', 'user_sessions')),
url(r'', include('two_factor.urls', 'two_factor')),
url(r'^admin/login/$',
view=LoginView.as_view(), name='login'
),
url(r'^admin/', include(wagtailadmin_urls)),
]
,LOGIN_REDIRECT_URL = '/admin/'
/account/login/?next=/account/two_factor/setup/