0

我已经研究了一段时间,无法理解如何在谷歌开发者控制台中为我自动创建的服务帐户获取我的公钥/私钥。

我正在制作一个 python 脚本,它使用谷歌电子表格中的 gspread 导入数据,并通过SignedJwtAssertionCredentials我需要一个现有的服务帐户来验证自己

问题是:

我使用以下方法创建一个新项目: “创建一个项目”

但是当我转到 Permissions/Permissions 时,我看到我需要的服务帐户已经创建,但我没有它的密钥。

我想知道如何获取@developer.gserviceaccount.com密钥,因为我已经尝试使用我的其他电子表格从谷歌电子表格导入数据@xxx-22324.iam.gserviceaccount.com但没有运气,它说电子邮件地址不存在。

编辑:

每当我去 API Manager / Credentials 时,我只能为我的@mxxx-22324.iam.gserviceaccount.com(我不能使用的那个)生成一个密钥

4

1 回答 1

0

我解决了我的问题:

Google 已更新其服务帐户详细信息格式以及与服务帐户共享电子表格的方式,以便可以从 gspread 访问它们。

然后我创建了一个具有新格式的服务帐户:xxx@montredo-22324.iam.gserviceaccount.com 并将谷歌生成的完全相同的文件设置为 JSON 以供我的应用程序读取:

login = SignedJwtAssertionCredentials(json_key['client_email'], json_key['private_key'], scope)

然后在没有通知的情况下与我的服务帐户电子邮件共享电子表格(在我刚刚提到的 JSON 文件中相同)

瞧。

于 2016-01-27T15:39:39.297 回答