有一个问题,如何检查通过django social auth结束的电子邮件?例如,我希望我的网站能够将拥有@ example.com结尾电子邮件的人们联系起来。
答案 0 :(得分:2)
添加一个pipeline条目来执行检查,这样的事情可以解决这个问题:
def check_email(details, *args, **kwargs):
email = details['email']
if not email.endswith('@example.com'):
return HttpResponseRedirect('/invalid-email')
将其放在create_user
条目之前。考虑到一些提供商不会返回电子邮件(如Twitter)。
答案 1 :(得分:1)
如果您只使用Google后端,则可以使用GOOGLE_WHITE_LISTED_DOMAINS设置。
将其设置为域名列表以限制用户。
GOOGLE_WHITE_LISTED_DOMAINS = ['somedomain.com', 'anotherdomain.com']
更多信息:
http://django-social-auth.readthedocs.org/en/latest/backends/google.html