gpt4 book ai didi

google-api - Google OAuth2 重新授权在同意页面上缺少权限

转载 作者:行者123 更新时间:2023-12-04 07:38:40 26 4
gpt4 key购买 nike

当我强制用户第二次重新授权我的应用程序时,使用 approval_prompt=force ,如何让 Google 向用户显示我的应用请求的整个权限列表?

细节:

我有一个请求一组 Google API 权限的 Web 应用程序,包括 access_type=offline .我第一次批准时,它显示了正确的同意页面,列出了所有权限,如下所示:

first time Google OAuth2 consent page

后来,我用相同的参数将用户发送回谷歌授权。第二次,它只显示“有离线访问”:

enter image description here

为什么它不向用户显示所有权限?有没有办法强制它第二次向用户询问所有权限?为什么现在第一次显示“可以离线访问”?

我们的用户发现我们的应用程序没有要求任何实际权限令人困惑,所以我宁愿再次显示第一个批准屏幕。

我提出的请求的完整参数如下。网址:

https://accounts.google.com/o/oauth2/auth?access_type=offline&approval_prompt=force&client_id=1039955146864.apps.googleusercontent.com&redirect_uri=http://localhost:8081/sync/google/callback&response_type=code&scope=openid%20email%20https://www.googleapis.com/auth/admin.directory.group.readonly%20https://www.googleapis.com/auth/admin.directory.group.member.readonly%20https://www.googleapis.com/auth/admin.directory.user.readonly&state=480704597031619284232891277399900450622

参数分解:
access_type:offline
approval_prompt:force
client_id:1039955146864.apps.googleusercontent.com
redirect_uri:http://localhost:8081/sync/google/callback
response_type:code
scope:openid email https://www.googleapis.com/auth/admin.directory.group.readonly https://www.googleapis.com/auth/admin.directory.group.member.readonly https://www.googleapis.com/auth/admin.directory.user.readonly
state:480704597031619284232891277399900450622

最佳答案

我们启动了增量身份验证,这就是设计的工作方式。

http://googleplusplatform.blogspot.com/2013/12/google-sign-in-improvements11.html

这个想法是如果用户已经授予应用程序的权限,则无需显示相同的权限并要求用户批准。

如果您正确编写应用程序,则不应出现这种情况。如果您请求离线代码(刷新 token )并将其存储在后端,则不应再次请求它,除非您需要获得一些新的范围/权限。您应该使用您将来存储的刷新 token 。如果您只在用户在您的网站上时需要访问 token ,您可以使用其他流程来请求访问 token ,而用户不会看到批准页面。

关于google-api - Google OAuth2 重新授权在同意页面上缺少权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20555351/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com