当前位置: 首页 > 知识库问答 >
问题:

强制谷歌通过Python社交身份验证刷新令牌

何玉韵
2023-03-14

我们正在做一个项目,这个项目依赖PSA (0.2.1)与google oauth2(离线)进行认证。不知何故,我们失去了一些用户的刷新令牌,我们想迫使这些用户重新认证,以便我们可以从谷歌获得新的刷新令牌

我们尝试了两者:

  1. 去连接那些使用 /diconnect/google-oauth2的用户,我们得到了一个NotAllo的断开连接异常,即使从SOCIAL_AUTH_DISCONNECT_PIPELINE中删除了social.pipeline.disconnect.allowed_to_disconnect,我们也没有得到异常,但是当用户重新认证时,google响应中没有refreh_token
  2. 将approval_prompt=force添加到“帐户:社交:开始”网址,但它不返回refresh_token

任何想法将不胜感激。

更新:我们尝试使用 {% url 'account:social:begin' 'google-oauth2' %}?approval_prompt=force

谢谢


共有1个答案

艾飞宇
2023-03-14

使用此设置可以实现以下目的:

SOCIAL_AUTH_GOOGLE_OAUTH2_AUTH_EXTRA_ARGUMENTS = {
    'access_type': 'offline',
    'approval_prompt': 'force'
}

http://psa.matiasaguirre.net/docs/use_cases.html#re-prompt-google-oauth2-users-to-refresh-the-refresh-token的用例示例

 类似资料:
  • 我正在尝试通过Google Open Auth 2.0在我的MVC 3 Web应用程序中实现身份验证。我已经成功地形成了URL请求URL,它看起来像这样: https://accounts.google.com/o/oauth2/auth?scope=https://www.googleapis.com/auth/userinfo.emailhttps://www.googleapis.com/a

  • 我正在尝试使用Facebook凭据实现网站登录。当我在Facebook小部件上按“取消”或“确定”时,我会看到不同的反应。当我按Cancel时,我看到以下内容 这是可预测的。但是当我按OK时,我看到另一个错误。 我在本地运行的网站Ubuntu 14.04 apache Web服务器与80端口。我怀疑错误的Facebook应用程序设置,但不知道调试什么。 此外,我可以提到推特登录也在相同的设置下工作

  • 我正试图在他过期后获得一个新的访问令牌。我已将收到的信息保存在银行中,作为第一次客户访问的回报: {"access_token":"TOKEN","refresh_token":"TOKEN","token_type","承载","expires_in": 3600,"创建": 1320790426} 令牌到期后,我需要申请一个新的令牌,我这样做: 问题是总是返回以下错误:刷新OAuth2令牌时出

  • 我想使用 使用 来验证我的 REST 后端。您能否详细说明我如何将这种安全性集成到我的 Spring 应用程序中。 我希望使用与Spring Social Security相同的用户管理表和本地用户表。

  • 我正在遵循官方的Google身份验证流程。我的应用程序已经使用了最新版本的Google地图。 项目 应用程序 地图下方有一条红线,弹出窗口显示找到了11.8.0和11.4.2。构建错误消息如下:, 错误:任务“:应用程序:进程”的执行失败。 请通过更新谷歌服务插件的版本来修复版本冲突(有关最新版本的信息,请访问https://bintray.com/android/android-tools/co