1

我目前python-social-auth在我的 django 站点中使用包进行身份验证。我希望用户能够将多个社交帐户关联到 django 帐户。social:begin但是,如果我在用户已经使用同一提供商的帐户登录时调用view,它什么也不做,只登录旧帐户。有没有办法告诉它强制从该提供商添加新帐户?

谢谢。

4

1 回答 1

1

您需要告诉提供商您要再次向用户显示“选择帐户”表单(如果可能,因为这取决于提供商),或者如果用户想要添加另一个关联,请要求用户从原始帐户注销。

例如,google-oauth2您可以通过添加此设置来做到这一点

SOCIAL_AUTH_GOOGLE_OAUTH2_AUTH_EXTRA_ARGUMENTS = {
    'prompt': 'select_account'
}

Google 的 API 文档列出prompt.

您也可以使用其他选项:

SOCIAL_AUTH_GOOGLE_OAUTH2_AUTH_EXTRA_ARGUMENTS = {
    'approval_prompt': 'force'
}
于 2014-10-22T12:57:34.927 回答