0

我有一个开源项目,在测试环境和生产环境中使用两个独立的Firebase项目。

最终,我希望其他开发人员能够删除项目并实际运行它,而无需我为每个开发人员提供访问权限。

在这个问题上,我看到了许多解决方案:如何将合作者添加到Firebase应用程序中?这些似乎都需要每个人的电子邮件。

我理解为什么这可能不是一件事,但我想知道是否有一种方法可以让每个人都只访问测试项目,从而实现超低摩擦。类似于Firestore数据库规则,允许以公共方式开始读/写测试。

我曾尝试在Google云控制台中创建一个新的IAM帐户,我认为这在Firebase Cloud Functions访问Admin SDK方面有部分效果,但我的合作者在尝试运行时挂了电话firebase的使用<测试firebase项目>说他们没有访问权限。

我看到了IAM的许多其他配置选项,但在这个公共访问场景中,没有任何突出的地方。

有人能确认这是不是一件事吗?

谢谢!

编辑

为了给我的项目添加更多细节。。。

我正在使用身份验证、Firestore和云函数。我将使用的唯一js包是Auth包,它将从CDN加载(所以我认为这不适用于我的问题)。

我想让人们能够在本地运行云功能。我在vanilla Node中进行了一个预构建步骤,它调用一个云函数(本地运行),该函数使用Firebase Admin SDK调用我的Firestore数据库。然后,我将该响应写入前端使用的JSON文件。

当我的合作者退出项目并安装Firebase CLI时,当他们尝试在本地服务Cloud Functions时,他们会遇到“无法访问”类型的错误。我试图通过在/functions目录中添加服务帐户来解决这个问题,但显然这没有帮助。

我的合作者根本不需要访问控制台。我基本上只需要他们能够在本地运行Cloud Function(并确保他们无法访问我的生产Firebase项目)。

我很高兴添加更多细节,但我有点觉得我只是漫无边际。再次感谢。

5
  • 请编辑此问题,以包括项目中正在使用的特定Firebase产品(数据库?存储?),以及您希望其他人能够如何协作(访问控制台?仅访问产品中的数据?)。请尽可能具体。 评论 2020年1月19日16:57
  • 我不打算把这样一个函数放在一起,但您可能可以把一个Firebase函数放在一起来,它接受一封电子邮件(可能至少把它白名单到一个域),然后使用一个具有适当权限的服务帐户,使用云IAM REST API. 评论 2020年1月19日17:02
  • @Doug Stevenson我试图添加更多细节。如果有帮助,请告诉我。
    – 第11页
    评论 2020年1月19日19:21
  • @samthecodingman听起来很有趣,而且比我想要的还要多。我可能宁愿“放弃”并单独添加用户,也不必支持整个其他api。不过,谢谢你的主意!
    – 第11页
    评论 2020年1月19日19:22
  • @samthecodingman也许我说得太早了。我会看看那些文件。也许这比我想象的要容易。
    – 第11页
    评论 2020年1月19日20:14

1个答案1

重置为默认值
0

无法授予每个贡献者对Firebase控制台的访问权限。您可以添加每个用户,也可以创建自己的仪表板,使用API显示相关数据。

4
  • 谢谢,弗兰克。我对原来的问题进行了编辑。我根本不需要他们访问控制台。只是希望他们能够运行消防基地使用<项目>命令。
    – 第11页
    评论 2020年1月19日19:23
  • 这实际上与控制台访问是一样的。 评论 2020年1月19日19:44
  • @Doug Stevenson啊好吧,我没有做那种联系。弗兰克,我不确定我是否遵循了创建自己的仪表板位。我只是想授予访问权限。所以听起来,Sam the Coding Man的评论是我最接近的选择。
    – 第11页
    评论 2020年1月19日20:11
  • 我觉得这就是我想做的事情。stackoverflow.com/questions/45437286/……如果我能找到解决方案,我会继续研究并发帖。再次感谢大家!
    – 第11页
    评论 2020年1月19日21:07

你的答案

单击“发布您的答案”,表示您同意我们的服务条款并确认您已阅读我们的隐私政策.

不是你想要的答案吗?浏览标记的其他问题问你自己的问题.