Django:连接社交媒体本地用户但不允许使用社交媒体凭据登录

时间:2021-03-10 03:57:54

标签: python django authentication django-allauth python-social-auth

问题:

我的 Django 网络应用程序允许用户使用电子邮件/密码登录。现在我需要将他们的一个或多个社交帐户连接到现有帐户,但仅用于访问他们的社交媒体内容。他们将无法使用他们的社交凭据登录我的 web 应用程序。他们仍然需要使用现有的电子邮件/密码登录我的网络应用程序。

目前的工作:

我查看了 django-allauth 和 python-social-auth,但不确定我是否可以选择不允许登录但仍连接社交帐户。

问题:

那么有可能使用 django-allauth 或 python-social-auth 来实现吗?有没有更简单的方法?

谢谢!

1 个答案:

答案 0 :(得分:0)

python-social-auth 让您通过禁用在管道中创建用户的步骤 (pipeline docs here) 来实现这一点,您甚至可以在该管道中定义一个早期步骤,强制执行 request.user已通过身份验证。

要考虑的另一个选项是将视图包含在您的 urls.py 中,然后将其包装在 login_required() 装饰器中,确保只有经过身份验证的用户才能使用此关联机制。

相关问题