问题标签 [google-oauth]

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 回答
1249 浏览

smtp - 使用 Oauth2 Gmail 连接到 SMTP

我正在尝试使用 Oauth2 for Gmail 连接 SMTP,但遇到以下问题。

Oauth 令牌和电子邮件名称是正确的,并且可以连接 IMAP。

我正在遵循google 的示例

0 投票
2 回答
1004 浏览

google-fusion-tables - 将命令行脚本迁移到 FT API 1.0

我有一个简单的服务器端命令行 python 脚本,基于现在已弃用的 FT SQL API,使用客户端登录进行授权。每隔几个小时,我就会通过插入更新的数据来刷新我的 FT。这是一张小桌子,有 3000 行。

阅读 FT 迁移指南,拥有 Google 用户 ID,启用 FT API 并拥有 API 密钥等(将我的 Google 地图应用程序切换到新 API 非常简单)

但我对如何继续迁移命令行 python 脚本感到困惑。我看到 OAuth2 是推荐的身份验证方法,但在我看来,这是一种比我真正需要的方法复杂得多的方法。我什至不清楚它是否适用于命令行脚本。真的不需要提示用户输入登录信息(只有我)。我意识到这一定是一个“已安装的应用程序”,我在 https://developers.google.com/fusiontables/docs/sample_code#ftAPIv1找到了 Hello,p​​ython 示例

还没有尝试过,但想看看是否有人有迁移命令行脚本的经验。(PHP 也可以)

特别是我对我在这里找到的一句话很感兴趣: https ://developers.google.com/fusiontables/docs/v1/using

“Fusion Tables API 还支持旧的授权选项,例如 OAuth 1.0、AuthSub 或 ClientLogin;但是,在大多数情况下,我们不建议使用这些其他选项。如果您的应用程序已经使用这些选项,我们建议迁移到 OAuth 2.0如果可能的话。”

因为,坦率地说,我宁愿不为这样一个简单的任务切换到 OAuth 2。

更新

忘了提一下,我每 3 小时从 cron 运行一次。所以用户输入是不可能的。尽管正如大卫在下面建议的那样,一次性用户输入是可行的。

0 投票
6 回答
13777 浏览

java - 通过 SMTP Gmail Oauth2 问题发送邮件

我可以按照google 示例对 SMTP 进行身份验证。

但现在的问题是我无法发送邮件。每当我尝试发送邮件时,我都会收到以下错误。

首先,我无法连接到本地主机,因此我在会话的属性中添加了几行代码,如下面的 OAuth2Authenticator 类,仍然成功验证。但是发不出去邮件。

我正在使用相同的会话对象和 SMTP 传输对象,当我第一次成功进行身份验证时,它们将从 OAuth2Authenticator 类返回。

完整的调试日志

编辑:我现在像这样明确地调用 AUTH 命令。

但反应还是一样。

0 投票
2 回答
13069 浏览

gmail - 如何获得对 Gmail 的 OAuth 访问权限?

您如何获得用户启动的访问权限以阅读他们的电子邮件?似乎有 OpenID、OAuth、OAuth2 和其他随机解决方案。

到目前为止,我想出的最好的是带有scope=https://mail.google.com/.

是否有任何权限可以让我对邮件进行只读访问,并且理想情况下不会通过以下权限通知来吓唬用户:

“查看和管理您的邮件在我不使用应用程序时执行这些操作”

如果可能的话,我只想“查看您的邮件”。

0 投票
1 回答
349 浏览

oauth - Google 阅读器 OAuth 范围的 oauth_verifier 缺失或无效

我正在使用 Google OAuth 1.x Playground 试用 Google Reader API。但是当我尝试使用以下 OAuth 范围进行授权时,我得到“oauth_verifier 丢失或无效”: http ://www.google.com/reader/api

我相信这是正确的范围。请指教。

0 投票
1 回答
381 浏览

oauth-2.0 - 尝试下载文件时出现 Google Drive API 401

我正在使用google-api-php-client获取我的 Google Drive 上文档的 URL。当我将 URL 粘贴到浏览器中时,该 URL 可以正常工作,并且可以下载该文件。

但是,在我的 PHP 应用程序中,我总是得到 401。这是我的代码:

我尝试更改BearerOAuth(这就是 OAuth 2.0 游乐场使用的),但都失败了。

有任何想法吗?

0 投票
3 回答
8298 浏览

c# - WinForm 上的 Google OAuth 2.0

我需要一些指示,因为我迷路了。我正在开发 WinForms 中的一个非常小的应用程序,它使用 Google API。为了能够获取用户数据,我需要获取他的用户名和密码,直到这一部分一切正常,但是,我没有任何保存用户的能力。

现在,我不想每次都询问用户名和密码,所以我试图找到一种安全的方法来做到这一点。

我问了一个关于我应该把这些信息放在哪里的问题,得到的答案是保存用户名和密码不是个好主意,我应该改用 Google OAuth 2.0。

但是,我的问题是我需要为 Google OAuth 2.0 使用网络浏览器,现在我不确定如何在我的 WinForm 应用程序中实现它。

我的问题:

  1. 是否可以从网络浏览器获取数据到我的应用程序?
  2. 我应该寻找不同的方式来获取用户数据吗?(任何建议都会很棒)。
0 投票
0 回答
4876 浏览

oauth-2.0 - Google OAuth2 返回“invalid_grant” - 签署 JWT 问题

我有一个 OAuth2 java 客户端(用于服务器到服务器应用程序),它试图创建一个 JWT,然后使用私钥(来自 Google API 控制台)进行签名 - 按照这些页面https://developers.google.com/accounts/文档/OAuth2ServiceAccount。但是,谷歌 OAuth2 不断返回“无效授权”。

这是客户端代码:

然后使用 curl 获取访问令牌: curl -k -vSs -X POST -d "grant_type=urn%3Aietf%3Aparams%3Aoauth%3Agrant-type%3Ajwt-bearer&assertion=" https://accounts.google.com/o/ oauth2/令牌

知道出了什么问题吗?

==============================

最后我自己发现了问题:

1)在 JWT 中,不要设置“prn”(但您可能需要根据要求)

2)使用“@developer.gserviceaccount.com”作为“iss”

这是更新的代码:

0 投票
1 回答
13523 浏览

java - 无法使用 Google API [google-oauth-java-client-1.12.0-beta] 获取服务帐户流的令牌

我正在使用 Google API(版本 google-oauth-java-client-1.12.0-beta)获取 OAuth2 访问令牌,但返回“invalid_grant”。参考:https ://developers.google.com/accounts/docs/OAuth2ServiceAccount

这是代码:

结果:

这里有什么问题?任何提示将不胜感激。

0 投票
1 回答
984 浏览

google-oauth - How to get user data from Google API with OAuth remotely from a server?

I've been reading lots of documentation about Google API access and OAuth flow using it but I don't seem to get it working in my mind, so I want to get some help first in order to have a clear idea about how it works then I can code it using the corresponding API.

What I want to achieve is feed a Java application running in a PC with specific Google user data, like localization through Google Latitude API. In order to get this, OAuth must be used, so I need getting the user consent, then access the user data from the application running in my computer, and I don't know how to manage this.

I've already registered my application with the Google APIs Console and enabled the Google Latitude module. I've also tried the Latitude console application here and it works properly (a browser tab opened asking for a Google user; I entered it and I got the location data), but I'm having problems when trying to adapt the program flow to my needs.

In my application, the 'remote' user is supposed to send a request (a custom JSON message) to the server asking for service enable/disable, like allowing the server to track his/her position through Latitude. Then, AFAIK, the server should send to the user a URL so the user can give the consent, but I don't know how to get this URL and how the server realizes about this consent and gets the token (automatically? Google tracks this authorization process?). Once my server gets the specific user token, then I should be ready to get service data for that user using the received token.

As I said before, I've tried according to different references, but as the documentation seems to be really scattered and much of it is already deprecated, I've been unable to get it working.