我正在将Firebase函数从一个Firebase帐户切换到另一个。我重新运行了firebase init
。我已经将新的服务帐户配置添加到项目中,并将其传递给admin.initializeApp
。我已经通过CLI登录到GCP,并运行了firebase login:ci
。
尽管如此,每当我尝试运行firebase deploy
时,我都会遇到错误:
缺少部署函数所需的权限。您必须在服务帐户@appspot.gserviceaccount.com.上拥有iam.serviceAccounts.ActAs权限
知道这里发生了什么吗?
这与用于初始化Firebase Admin SDK的服务帐户无关。该错误与您使用Firebase CLI登录时使用的Google帐户权限不足有关。它没有部署到云功能的权限。您应该先注销,然后使用具有权限的帐户(通常是"编辑器"角色(重新登录,或者向要使用的帐户添加适当的权限。
如果您要迁移到一个新的Firebase项目/帐户,则必须在运行firebase init
之前删除该项目现有的.firebaserc和Firebase.json文件,这将确保您使用更新的项目配置。