【发布时间】:2021-09-27 11:55:15
【问题描述】:
我有一个已部署到多个 Firebase 项目(即开发、登台、生产)的网络应用。它使用 Cloud Functions for Firebase 的后端功能。
最近,在部署到新环境后,我开始收到其中一个功能的 CORS 错误。经过一番搜索,我发现Cloud Functions panel 中的身份验证设置会影响这一点,在这种情况下,让 allUsers 可以访问该函数解决了我的 CORS 问题。
在 Functions 控制台中,我注意到大多数(但不是全部)我的 Firebase 函数默认将身份验证设置为“允许未经身份验证”。然而,奇怪的是,在不同的环境(即 dev 与 staging)中,一个函数可能被设置为允许未经身份验证,但在其他环境中则不允许(即使我从未手动更改任何这些设置)。
基本上,我的问题是,这些设置是如何确定的?我只通过firebase deploy 或firebase deploy --only functions 部署了我的功能。这里的预期行为是什么?通过 Firebase 部署的 Cloud Functions 是否会默认设置为“允许未经身份验证”,而那些在部署过程中不会简单地遇到某种错误的功能?
【问题讨论】:
标签: firebase firebase-authentication google-cloud-functions google-iam