问题标签 [google-oauth-java-client]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
62 浏览

java - 获取用户具有管理员访问权限的帐户的 API 是什么(提供 OAuthV2 访问权限)?

我已经从用户那里完成了 OAuthV2 以进行 adwords 管理,现在我想管理客户的帐户,为此我只想要用户具有管理员访问权限的那些帐户。你能帮我如何获得这些帐户,或者至少我如何检查客户在给定帐户上是否具有管理员访问权限?

0 投票
1 回答
522 浏览

oauth - Google oauth 客户端 - 通过 https 进行回调

我正在使用 google-oauth-java-client 库对 NetIQ 身份提供程序进行身份验证。授权请求到达 IdP,但它不接受通过 HTTP 的回调:

有没有办法使用 https 设置回调 url?这是请求授权授予的 java 代码:

0 投票
0 回答
2938 浏览

java - 使用代理服务器连接到 Google Api

我公司的网站正在使用谷歌分析来跟踪各种细节,现在我们需要从谷歌分析服务器获取所有这些原始数据并使用内部工具进行处理。

我使用 HelloAnalytics 示例代码(Analytics V4 和 oAuth 2.0)创建了一个小的 Java 代码,以从 google 服务器获取会话数据。当我从我的个人计算机上运行相同的代码时,它运行良好;但是当我尝试从公司网络执行相同操作时,它无法抛出“连接超时”或“无法识别的 SSL 消息,明文连接?” .

这些问题显然是由于我公司使用的防火墙或代理服务器造成的。我想知道是否有任何方法可以从使用代理服务器的公司网络连接到 Google Analytics。

我添加了http.proxyHosthttp.proxyPort作为系统属性,没有任何改变,得到了同样的错误。但是当我添加https.proxyHosthttps.proxyPort而不是 http 端口时,它开始抛出错误消息“PKIX 路径构建失败:sun.security.provider.certpath.SunCertPathBuilderException:无法找到请求目标的有效认证路径”

谷歌文档没有多大帮助:(。任何帮助都非常感谢。

我的参考代码:

0 投票
1 回答
165 浏览

access-token - 使用 OpenID Connect 和令牌使用实现 SSO

场景 - 需要使用 OpenID 连接进行身份验证的遗留应用程序。我们使用 keycloak 作为 IP。

我真正需要的是针对多个应用程序的单一身份验证机制。认证后,我还需要'user-id'信息(索赔)。

我有 access_token (范围openid)。我是否还需要id_token访问“用户 ID”信息?还是我需要解码“ access_token

0 投票
0 回答
581 浏览

java - 如何使用 gclient-java 库将 Google oAuth 凭据存储在数据库中?

我正在使用 glcient-java 库来处理 Google oAuth Flow。按照文档中的建议,我有两个分别扩展 AbstractAuthorizationCodeServlet 和 AbstractAuthorizationCodeCallbackServlet 的类。流程进行得很顺利。我现在正在尝试将我在 onSuccess 方法中收到的凭据对象持久化/存储到数据库中。情况是,用户(由唯一 ID 标识)可以选择连接一个或多个谷歌帐户。我想要的是每次通过 oAuth Flow 和 onSuccess 方法连接一个新的 Google 帐户时,我应该能够在数据库中添加一行,其中 uniqueID、GoogleAccountEmailID、AccessToken、RefreshToken 存储在表中。

以下是我的重要实现方法:

另外,我应该如何实现我的 getUserID() 方法来给我从 oauth 令牌响应或凭据对象中提取的 emailID。

请帮忙。

0 投票
1 回答
975 浏览

java - Java中服务器端Web应用程序中的Google OAuth2流程

我在理解 oauth2 流程时遇到了问题。用户(由 user_id 标识)在浏览器中启动 GoogleAccounts 连接。请求被传递给 Servlet,后者将重定向字符串发送到客户端 (Javascript),然后将用户重定向到该 Auth URL。在用户同意时,响应将返回到回调 url(映射到 servlet)。我的困惑是当回调 servlet 被调用时,我如何识别这个 authCode 属于哪个用户(user_id)?我必须使用 oAuth2 的状态参数吗?

请帮忙。

0 投票
1 回答
764 浏览

heroku - google drive Oauth 2.0 for java web application

我的项目是我在 heroku 上托管的 java spark 项目。项目的一部分要求我从我的谷歌驱动器下载一个特定的文件到应用程序中。当我的应用程序在本地运行时,我设法设置了所有内容,但是一旦我部署了应用程序,它就停止了工作。这与以下事实无关,即当应用程序在本地运行时,我使用了 other 类型的 Oauth2 客户端 ID,而当我部署应用程序时,我创建了一个新的 Web 应用程序类型。

以下是验证和下载代码的片段:

目前,当我尝试启动下载时,我在 Heroku 日志中得到一个 URL,如下所示:

当我尝试在浏览器中打开 URL 时,出现错误:

我找不到任何关于在 Java Web 应用程序上访问谷歌驱动器内容的好的分步教程,所以任何帮助都会得到帮助。

0 投票
1 回答
145 浏览

java - 谷歌 api oauth 2.0 linux root

我正在将 Google Sheets API 用于将 Excel 工作表可视化为图表的 Web 应用程序。如果我在本地运行服务器并使用我的浏览器访问谷歌同意屏幕,这将非常有用......

但是,如果我将网页上传到我只有控制台访问权限的 linux 根服务器,我不能使用浏览器让机器访问 google api。

我使用 google api java 示例来编写此代码。

我现在的问题是:如何让我的网络服务器访问谷歌 API,我尝试了服务帐户,但是如果我使用从服务帐户获得的 json 作为客户端/秘密,它根本不起作用。

这是我的代码。也许这是一个简单的解决方法,我只是愚蠢地看到。

更新 错误是:“未授权”

经过几个小时的故障排除后,我终于设法解决了它。我尝试了很多 p12 密钥文件和“Google 服务帐户”,但这似乎也没有用。我也一直得到“未授权”。

我之前尝试过使用完整 json 文件的服务帐户。至少我觉得...

当我第二次改变它时,我必须有不同的模式。

我补充说:

这以某种方式起作用。我确定我之前已经尝试过使用 json 文件 + 服务帐户,但我可能在某个地方犯了一个小错误。我还尝试将我的主帐户的访问权限传递给服务帐户,这也不起作用,或者我在某个地方出错了。我现在也向服务帐户添加了所需的访问权限。经过 12 小时的故障排除后,它现在可以正常工作了。

0 投票
0 回答
112 浏览

javascript - Google OAuth2 两次询问帐户详细信息

我正在使用 javascript 使用 OAuth 通过 google 对用户进行身份验证。我让用户登录,但帐户选择器打开了两次,它选择帐户一次又一次询问帐户,然后每次都要求离线访问。

我需要选择一次帐户并选择离线访问,这是代码。

0 投票
1 回答
589 浏览

oauth-2.0 - Google OAuth 2.0 Java 库如何处理访问令牌!如果提供了 Client ID、Secret 和 Refresh Token。?

我正在使用 Java 库来获取 Google Analytics 数据。

我确实有客户 ID、秘密和刷新令牌。我正在通过此凭据信息访问 Google Analytics API, 我的问题是,Google OAuth 2.0 会自动处理访问令牌吗?还是我需要用某种机制手动处理它?如果我没有将访问令牌传递给此代码。