问题标签 [google-auth-library]

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

python - Google Photos API + python:工作的非弃用示例

我一直在寻找这样的代码示例组合。但是没有维护的库(google-auth)+完整的工作示例。google-api-python-client并且oauth2client不再受支持(https://github.com/googleapis/google-api-python-client/issues/651)。

这是一个不推荐使用的库的工作示例,但我希望看到一些允许完全访问 api 的示例(按 albumId 搜索目前不适用于此库):

0 投票
1 回答
141 浏览

firebase - 如何使用 google-auth-library 和 firebase-admin 进行身份验证?

我正在尝试使用firebase-admin并发现一些不一致之处。我正在尝试编写一些身份验证代码,google-auth-library然后firebase-admin卡在获取client_id,client_secret的位置。我觉得这是我可以从admin之后得到的东西,initializeApp但我不知道怎么做。

谢谢

0 投票
1 回答
357 浏览

google-api - 给出“未找到请求的实体”的成员列表

我正在尝试编写一个目录服务类来与组成员一起使用并且遇到了麻烦。我的服务帐户已获得域范围的委派,并允许https://www.googleapis.com/auth/admin.directory.group.memberhttps://www.googleapis.com/auth/iam范围。我正在模拟具有组管理员角色的用户帐户。

返回的错误是

0 投票
0 回答
264 浏览

google-cloud-platform - GCP - 使用应用程序默认凭据的云功能域范围委派(无 -jwt)

我正在尝试创建一个基于 NodeJS 的云函数,它使用域范围的委托访问来使用 API 方法 gmail.users.settings.delegates.list。

我正在寻找不使用服务帐户 JSON 密钥的解决方案,我想改用默认凭据。

我使用这个 launch.json 文件配置我的本地环境来模拟云功能环境

将 env 变量打印GOOGLE_APPLICATION_CREDENTIALS到 GCF 中似乎这个变量根本不存在,但我不明白如何更好地模拟 GCF env

谈到auth对象,我发现了两种方法:

第一的:

第二:

inputData.userPrimaryEmail包含与服务帐号在同一组织中的有效 GSuite 帐号。

Bad Request当我将 GCF 发布到 GCP 时,这两种方式在本地都可以正常工作,但会因错误而停止工作。

谁能帮忙?


编辑

几个小时后,我发现这篇文章谈到了它

我按照他的指示修改了我的代码

第三:

第四:

和以前一样,所有这些在本地都可以正常工作,但是我对 GCF 提出了错误的请求

0 投票
1 回答
270 浏览

node.js - 通过 Node.js API 删除 Big Query 中的表,并获取 ENOENT: no such file or directory

我意识到这可能是一个愚蠢的问题,所以感谢您花时间阅读(并希望能回答)它。我对 Javascript 和节点都是新手,所以请假设我知道一些行话。

我正在尝试使用谷歌客户端库中的 table.delete() 函数(链接如下)删除 node.js(v12.15.0)中的 Big Query 表。

https://googleapis.dev/nodejs/bigquery/latest/Table.html#delete

要运行此程序,谷歌需要从您的 Big Query 帐户进行身份验证,我已将其作为 json 文件下载并存储在“凭据”文件夹中。该路径作为环境变量保存在我的 ~/.bash_profile 中:

当我尝试运行上述脚本时,出现 ENOENT 错误:

显然,这个脚本在 /Users/tom/Desktop/work/test 中搜索 .json 文件的内容,而不是文件本身,但我不知道为什么。bash配置文件中的路径肯定是正确的,环境变量也正确更新了。如果有人能帮我一把,我将不胜感激!如果您需要更多信息,请告诉我。

0 投票
1 回答
746 浏览

node.js - 使用 Google-Auth-Library 将服务帐户连接到 Admob API 时出现问题

我一直在尝试从 AWS Lambda 连接到 Admob API,以不时自动从报告中提取一些值。我已经成功地将google-auth-library-nodejs放到了一个层中,并且我正在尝试使用它来连接到 Admob API。

我已确保为我的服务帐户提供所有者角色,并且已将必要的 GOOGLE_APPLICATION_CREDENTIALS 路径添加到环境变量。

这是我添加到我的 Lambda 的代码:

当我运行代码时,我收到以下错误:

我一直试图通过在谷歌上搜索、堆栈溢出、阅读有关连接到 Admob API 的教程以及阅读库的代码来找到我的错误。如果有人能指出我的解决方案,我将不胜感激。

0 投票
1 回答
98 浏览

google-cloud-platform - 谷歌云服务帐户不起作用

我正在尝试通过从本地计算机创建服务帐户来与谷歌云和服务 API 进行通信。我在 Mac OS 上

我正在关注这篇文章

https://cloud.google.com/docs/authentication/production

我在本地终端会话中设置了“GOOGLE_APPLICATION_CREDENTIALS”环境变量。

它指向通过谷歌云控制台创建的服务帐户的密钥文件。

但是运行下面的节点 js 程序给了我错误

错误是

由于无法实例化存储对象,因此在读取凭据时似乎出现错误。

此致,

索拉夫

0 投票
1 回答
1840 浏览

google-cloud-platform - 获取服务帐户的访问令牌时出错:使用服务帐户使用日历 API 时出现 401 未授权

我有一个具有域范围委派设置的服务帐户,我正在尝试使用该服务帐户创建新帐户(google-api-services-admin-directory),然后添加一些预设日历(google-api-services-calendar)新创建的帐户。

我对目录 api 没有任何问题。我必须使用服务帐户创建一个委派(管理员)用户,并且所有目录 API调用都可以正常工作。

但是,我一直无法让calendar-api调用正常工作。

Java 依赖项:


Java代码:

堆栈跟踪 :

有趣的是,错误是间歇性的。重新部署后,我总是可以第一次尝试工作。之后,它是一个成功或失败。

  • 我确实将服务帐户添加到我要添加的日历中,并确保服务帐户是日历上的“所有者”。
0 投票
0 回答
24 浏览

python-3.x - 在机器之间迁移谷歌生成的 API 令牌

我正在尝试将 CSV 文件上传到 python 中的谷歌工作表(希望每次都上传到同一张工作表和不同的工作表)。我浏览了所有教程,我知道我需要:

  1. 在 google 中进行身份验证以生成存储在credentials.json.

  2. 使用代码中的凭据,它在我的机器上运行良好。

我已经设法在我的机器上完成了这两个步骤。问题是当我想在另一台机器上运行代码而不生成新credentials.json文件时。当我在新机器上运行代码时,每当代码运行时,我都需要登录到我的谷歌账户,通过该账户我生成了 api 密钥。有什么办法解决这个问题吗?

0 投票
1 回答
3981 浏览

google-authentication - java.io.IOException:从流中读取凭据时出错,未指定“类型”字段

我正在尝试使用我自己的帐户将 java 应用程序验证到谷歌照片 api,根据文档,该帐户不支持 service_account。问题是 google-console 为 OAuth2 身份验证生成的文件不包含类型字段,只有通过为服务帐户创建凭据生成的文件才有效。

我尝试通过/不读取生成的文件来验证网络应用程序gcloud auth application-default login,该文件确实包含类型/client_id/client_secret/refresh_token。

例如:

任何可能有帮助的想法?