为不同类型的用户使用两个不同的身份验证后端
这个问题在这里已经有了答案:
django提供了一个AUTHENTICATION_BACKENDS
设置,它应该AUTHENTICATION_BACKENDS
你的要求。
AUTHENTICATION_BACKENDS = (
'django.contrib.auth.backends.ModelBackend',
)
我们看起来像这样....
AUTHENTICATION_BACKENDS = (
'social_auth.backends.facebook.FacebookBackend', # fb backend par social_auth
'social_auth.backends.twitter.TwitterBackend', # twitter backend par social_auth
'backends.EmailAuthBackend',
'backends.APIAuthBackend',
'django.contrib.auth.backends.ModelBackend',
)
在这种情况下, backends.APIAuthBackend
是我们检查提供的用户身份验证令牌的地方。 你只需要在这个类的def authenticate
方法中写入你的验证代码,如果该令牌存在就返回一个用户。
django文档提供了更多信息。
https://docs.djangoproject.com/en/dev/topics/auth/customizing/#writing-an-authentication-backend
链接地址: http://www.djcxy.com/p/33801.html上一篇: use two different authentication backends for different types of users
下一篇: how to custom User model / custom backend for authenticate()