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

谷歌OAuth2要求“离线访问”

黄凌龙
2023-03-14

我正在使用<code>Microsoft.Owin.Security。Google(版本3.0.1)middlware为我的应用程序提供Google OAuth。

它的配置如下:

app.UseGoogleAuthentication(new GoogleOAuth2AuthenticationOptions
{
    AuthenticationType = "Google",
    Caption = "Google",
    SignInAsAuthenticationType = signInAsType, // "idsrv.external"
    ClientId = "xxx.apps.googleusercontent.com",
    ClientSecret = "xxx"
});

非常简单的东西。我使用身份服务器作为MW来发出声明。

这是完全有意义的,因为我在URL中请求openid配置文件电子邮件作用域:

https://accounts.google.com/o/oauth2/auth?scope=openid简介邮件

然后我接受了,一切都很好。

现在,在我注销后,再次重新认证——从现在开始谷歌不断要求我“离线访问”:

我没有要求离线访问范围,所以很困惑为什么谷歌会要求这个?

已确认URL看起来正常:

https://accounts.google.com/o/oauth2/auth?scope=openid简介邮件

所以与第一个请求完全相同的URL。

我试过了:

  1. 在API控制台中打开Google API
  2. 尝试添加<code>

这些技术都没有奏效。

有什么想法吗?

共有2个答案

汪典
2023-03-14

offline_access范围值请求OAuth 2.0刷新令牌。

如果您没有请求这个,那么它听起来像是OWIN Google组件或Google API中内置的东西。

可以在此处阅读有关脱机访问范围的详细信息:http://openid.net/specs/openid-connect-core-1_0.html#OfflineAccess

姚洲
2023-03-14

似乎是本地主机问题。一旦部署到服务器,工作正常:/

 类似资料:
  • 我试图设计一个应用程序,从我的谷歌云存储帐户下载适当的声音文件。该应用程序不访问用户帐户,但我自己的帐户。 我的阅读让我相信,最合适的模式是服务账户https://code.google.com/p/google-api-java-client/wiki/OAuth2#Service_Accounts 不幸的是,开发人员决定不提供Android的例子。他们确实提供了一个很好的例子,只是简单的Jav

  • 我正在开发一个android应用程序,它将监听语音命令并相应地触发动作。 以下是一些疑问: > 谷歌语音识别离线库是否可用于android应用程序 我们能创建自己的词汇词典吗 应用程序应在脱机模式下工作(无Internet)。

  • 我有一些谷歌地图折线。我试图在它们周围画两条折线,这样它们就形成了某种边界: 所以对于原始折线的每一个点,我计算边界线点,从原点算起25米: 在这个例子中,让我们省略折线的第一个和最后一个点。所以我总是看上一个点和下一个点,计算中心点的偏移量。

  • 脱机Google auth对驱动器中的非本机文件是否存在已知的问题?

  • (联系人和日历有不同的代币) 同步脚本: $AccesStoken是一个序列化字符串,如下所示: 我做错了什么? 有趣的是,对于联系人来说,同步一直都很好(访问令牌的属性与日历同步中的属性相同)

  • 我试图实现一个地图使用谷歌地图与离子。我遵循了这个链接中的编码,但我得到的只是一个空白屏幕,不知道我哪里出错了。请帮忙 这是控制器 这是html文件 请帮忙。