问题标签 [google-authentication]

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 投票
4 回答
13229 浏览

google-api - Google Authentication API:如何获取用户的 gmail 地址

我一直在研究 Google 身份验证 API (AuthSub)... 我的问题是,如何在身份验证通过后获取用户的帐户信息(至少是他们的 Gmail 地址)?

因为目前,我从身份验证过程中得到的只是一个令牌,授予我访问我在范围内指定的任何 Google 服务的权限,但是没有简单的方法可以尽可能地获取用户的登录 ID(Gmail 地址)告诉...


如果是这样,哪些 Google 服务允许我访问用户的信息?

0 投票
12 回答
149844 浏览

web-services - 如何验证 Google 身份验证 API 访问令牌?

如何验证 Google 身份验证访问令牌?

我需要以某种方式查询 Google 并询问:[给定访问令牌] 对 [example@example.com] Google 帐户有效吗?

精简版

很明显,通过Google Authentication Api :: OAuth Authentication for Web Applications提供的访问令牌如何用于从一系列 Google 服务请求数据。目前尚不清楚如何检查给定的访问令牌是否对给定的 Google 帐户有效。我想知道怎么做。

长版

我正在开发一个使用基于令牌的身份验证的 API。在提供有效的用户名+密码或提供来自N个可验证服务中的任何一个的第三方令牌时,将返回一个令牌。

其中一项第三方服务将是 Google,它允许用户使用他们的 Google 帐户对我的服务进行身份验证。稍后将扩展到包括 Yahoo 帐户、受信任的 OpenID 提供商等。

基于 Google 的访问的示意图示例:

替代文字

“API”实体在我的完全控制之下。“公共界面”实体是任何基于 Web 或桌面的应用程序。一些公共接口在我的控制之下,其他的不会,还有一些我可能永远都不知道。

因此,我不能信任在第 3 步中提供给 API 的令牌。这将与相应的 Google 帐户电子邮件地址一起提供。

我需要以某种方式查询 Google 并询问:此访问令牌对 example@example.com 有效吗?

在这种情况下,example@example.com 是 Google 帐户的唯一标识符 - 某人用于登录其 Google 帐户的电子邮件地址。这不能被假定为 Gmail 地址 - 有人可以拥有 Google 帐户而没有 Gmail 帐户。

Google 文档清楚地说明了如何使用访问令牌从许多 Google 服务中检索数据。似乎没有任何说明如何首先检查给定的访问令牌是否有效。

更新 令牌对 N 个 Google 服务有效。我无法针对 Google 服务尝试使用令牌来验证它,因为我不知道给定用户实际使用的所有 Google 服务的哪个子集。

此外,我永远不会使用 Google 身份验证访问令牌来访问任何 Google 服务,只是作为一种验证假定的 Google 用户实际上是他们所说的人的手段。如果有另一种方法可以做到这一点,我很乐意尝试。

0 投票
1 回答
2747 浏览

php - AuthSub 目标路径前缀与提供的“下一个”URL 不匹配

我正在尝试在 PHP 中使用 Gcal API。

我正在使用 ZEND 框架

我不确定我在这里做错了什么。我几乎完全按照谷歌的例子。

他们确实有$next = getCurrentUrl();他们的例子,但是当我尝试这样做时,我遇到了未定义的错误。

0 投票
1 回答
1060 浏览

php - 如何获得谷歌应用程序的永久长期身份验证令牌?

大家好,我正在开发我的谷歌应用程序 - 目前我已经根据谷歌提供的示例构建身份验证,即这个url

问题是会话似乎超时并且每次我登录到我的谷歌应用程序帐户并转到我的应用程序时,我都需要再次进行身份验证并通过谷歌询问我是否应该允许应用程序访问服务的屏幕如清单 xml 文件中列出的 GMAIL、Docs 等。我认为我做得不对,因为其他应用程序允许即时访问。

有任何想法吗

0 投票
0 回答
793 浏览

.net - 使用 .NET 安装应用程序的 OAuth

我正在尝试让已安装应用程序的 OAuth 与我的代码一起使用,但实际上收效甚微......

这是代码:

在最后一行,我得到一个例外:

服务器返回:

有人有想法吗?

我实际上并不太受 OAuth 的约束,但 ClientLogin 出于某种原因今天早上抓住了工作......无论如何,当用户不必向我的应用程序提供他们的凭据时,我感觉更好。

最好是一个 - 工作 - 例子,无论多么简单:)

我在网上某处读到,带有 OAuth 的 .NET 不适用于 GData 1.4.0.2(当前版本),并且它与 - 实验 - 1.5.0.0 一起工作得更好,但无法找到locatino 下载实验版 :(

提前致谢!

0 投票
1 回答
216 浏览

php - 如何在不提示用户的情况下登录与我的自定义应用程序关联的 Google Apps 帐户?

我正在开发一个基于谷歌应用程序的应用程序 - 它是一个项目管理系统,我正在设置它,以便它需要一个谷歌应用程序帐户才能用于特定已安装实例的所有用户。IE 有人使用谷歌应用程序帐户安装它,他/她可以创建可以从单独的登录屏幕登录的用户。同时,当这些其他用户登录时,我想进行设置,以便在他们登录系统时 - 他们关联的谷歌应用程序帐户会自动进行身份验证,他们不必手动添加用户名和该 Google Apps 帐户的密码。

这里有什么想法吗?

0 投票
2 回答
198 浏览

php - 如何无缝地对用户进行身份验证以使用与 Google Apps 帐户关联的服务?

大家好,我正在构建一个基于 Google Apps 的解决方案。基本上我是这样设置的:

  1. 当 Google Apps 帐户持有人安装它时,他/她输入要使用的单个 Googles Apps 帐户的身份验证详细信息 - 该帐户将被已安装系统实例的所有用户用于上传到与该帐户关联的 Google Docs,并且管理与该 Google Apps 帐户关联的 Google 日历条目。

  2. 如上所述的用户可以创建其他用户并邀请他们从单独的登录屏幕登录,他们应该能够与系统的设施进行交互,这些设施允许与用于安装系统的 Google Apps 帐户相关联的服务进行交互。

  3. 与原始用户同域的任何其他用户也可以安装系统并自动与同域用户创建的实例关联。

我设置了第一部分和第三部分,但第二部分是我遇到的问题 - 我将集中式 Google Apps 帐户的凭据存储在数据库中,并且需要一种使用详细信息进行无缝身份验证的方法,即我没有不希望用户必须添加登录详细信息,也不必经历必须被要求允许应用程序访问 Google Apps 服务的过程 - 我希望当用户登录时,它们会自动透明还登录了 Google Apps 帐户并能够使用其服务。

我该怎么做?

我知道这是可以做到的——我已经安装了大量的应用程序,但它们都不需要我完成这两个我觉得完全没有必要的身份验证过程——我该怎么办?- 请帮忙!

0 投票
1 回答
1398 浏览

iphone - 如何向 Google Reader 发送经过身份验证的请求?

谷歌似乎已经禁用了将 cookie SID 发送到他们的谷歌数据服务的旧方式,特别是谷歌阅读器。

这种方式至少对我不起作用:

和请求:

更改为使用 GoogleLogin auth=xxx 会给我一个 NSURLErrorDomain 401

结果始终是 401 错误代码。有人可以告诉我如何解决这种特定情况吗?先感谢您。

0 投票
3 回答
165 浏览

google-api - Google Apps 高级版:使用哪种身份验证机制?

我们公司有一个仅供我们员工内部使用的网络应用程序。我们还有 Google Apps 专业版。我们希望这样做,以便我们的员工可以使用他们已经拥有的 Google Apps 帐户登录我们的私人网络应用程序。

要求:我们要显示我们自己的登录表单。我们不想通过互联网以纯文本形式传递电子邮件/密码。

我们应该使用哪种身份验证机制来实现这一点?

注意:我们的应用程序是使用 Zend Framework 用 PHP 编写的(如果重要的话)。

0 投票
3 回答
1911 浏览

google-apps - 将 Google 帐户登录限制为指定的 Apps 域

如何让用户使用他们的 Google 帐户登录我的网络应用程序,并验证他们是否从某个 Google Apps 域登录?

谷歌授权服务的hd参数是否确保只有选定的域可以用于登录?

或者我可以获取登录用户的电子邮件并验证它是否以“@domain.com”结尾?这似乎不是一个好主意。

登录后,我还需要访问用户的 Google 联系人,根据文档需要AuthSub 代理身份验证