使用gcloud本地访问Firestore,只有个人帐户才有效?

问题描述 投票:0回答:1

为了简化问题,我在我公司的 Google Cloud 组织中创建了一个简单的 Google Cloud 项目。我激活了 Firestore API 并创建了一个本机(默认)Firestore 数据库。我运行 gcloud init 并将该项目和公司 Google 帐户之一指定为经过身份验证的用户。该用户具有“所有者”IAM 角色。然后,我从 Google 的 nodejs-firestore-session 复制/粘贴了一个简单的 NodeJS 代码示例,以测试 Firestore 作为快速会话存储。然后当我在本地托管nodejs时出现此错误:

错误:7 PERMISSION_DENIED:权限缺失或不足。

正如我之前所说,公司 Google 帐户在 IAM Google Cloud 项目中具有“所有者”角色。例如,我可以使用 gcloud 列出 Firestore 数据库。然后我添加了我的个人 Gmail 帐户在公司项目中具有 IAM“所有者”角色。

现在,示例 Nodejs 代码可以工作 即使我仍然使用我的公司 Google 帐户和 gcloud 登录。我可以看到在 Firestore 数据库的会话集合中创建的文档。仅当我添加我的个人 gmail 帐户时它才有效,当我删除我的个人 gmail 帐户的所有者角色时,我再次收到权限被拒绝的错误。

我认为这意味着对 Firestore 的访问不是使用我的 gcloud 凭据,而是其他东西...我尝试在线搜索答案,但很难找到,因为几乎所有有关 Firestore 的内容都与我不用于会话的 Firebase 相关商店。

您对我应该寻找什么才能仅使用公司 Google 帐户访问 Firestore 有任何提示吗?

非常感谢!

google-cloud-platform google-cloud-firestore gcloud
1个回答
0
投票

哦!才知道是怎么回事。当我使用 gcloud init 切换 gcloud 配置时,我以为我登录了 gcloud 中的两个帐户,但我仍然始终使用我的个人帐户登录。我只需运行 gcloud auth login 并运行公司 Google 帐户即可。

© www.soinside.com 2019 - 2024. All rights reserved.