gpt4 book ai didi

oauth-2.0 - 仅从 Google Sign-In for Websites 请求 'openid' 范围

转载 作者:行者123 更新时间:2023-12-03 17:14:02 27 4
gpt4 key购买 nike

我正在将 Google 登录集成到我的网络应用程序中,但无论我指定什么,它总是在登录流程中显示警告:

To continue, Google will share your name, email address, and profile picture with [app name].



我不需要也不想要我的用户的姓名、电子邮件地址或个人资料图片;我只需要一个 token_id。我知道一个 similar question开发人员只需要电子邮件地址,并且解释说其他详细信息无论如何都可以从电子邮件地址派生,但在这种情况下,我也不想要电子邮件地址。

关注 documentation我已经设置:

function login() {
gapi.auth2.init({
client_id: myClientIdHere,
cookie_policy: 'none',
fetch_basic_profile: false, // <-- remove basic profile
scope: 'openid', // <-- request only openid
ux_mode: 'redirect', // <-- using redirect to avoid popup blocker issues
redirect_uri: myRedirectUriHere,
}).then((GoogleAuth) => {
GoogleAuth.signIn() // [etc]
});
}

function init() {
gapi.load('auth2', login);
}

检查网络请求表明这将用户引导至:

https://accounts.google.com/o/oauth2/auth?redirect_uri=[myRedirectUri]&response_type=permission%20id_token&scope=openid&openid.realm=&client_id=[myClientId]&ss_domain=[myDomain]&fetch_basic_profile=false&gsiwebsdk=2

这看起来是正确的。我尝试调整该 URL 并手动导航到它,无论我如何更改它似乎总是显示警告。

在 Credentials -> OAuth 同意屏幕 -> Scopes for Google APIs 下的我的 Google API 控制台项目中,我可以看到“email”、“profile”和“openid”都被列出了,我找不到任何删除它们的选项.

我不知道当用户登录时它是否真的向我发送了该信息,但我想从登录屏幕中删除警告。

如何使用 Google 登录 只是 登录?如何防止它向我提供个人资料/电子邮件地址信息?

最佳答案

当您从 Google 获取访问 token 时,您可以调用 userinfo 端点并使用 openid 范围获取用户配置文件信息,因此即使您不需要电子邮件和配置文件信息,您仍然可以通过 userinfo 端点获取该信息[1]。

[1] https://developers.google.com/identity/protocols/OpenIDConnect#obtaininguserprofileinformation

关于oauth-2.0 - 仅从 Google Sign-In for Websites 请求 'openid' 范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55761397/

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