用户创建函数之前的 Google Cloud Platform 未显示在要注册的 firebase auth/gcp 身份中

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

我通过 Firebase CLI(和 v2 身份 Firebase API)创建了一个云阻止功能(在 UserCreated 之前),这已成功部署,并且可以在 Firebase 和 GCP 功能上看到。

在 Firebase 上,它将触发器识别为

before user created


问题

当我去注册阻止函数(以 Firebase 身份验证或 GCP 身份)时,它不会让我选择上传的函数,这意味着该函数在用户创建之前不会运行。

预期结果

根据

这些文档,我完成的设置应该足以让它在创建帐户之前选择功能时显示为一个选项(在Firebase authentication->settings->blocking functions

GCP Identity->settings->triggers
中)。

尝试的解决方案

    为云运行调用者提供适当的 Firebase 服务帐户 角色和云函数调用者角色以及 Firebase 身份验证和 GCP 身份角色(可在
  • 此处找到)
  • 删除并重新创建该功能(并尝试更新它)
  • 遵循
  • this 指南向正确的主体授予权限 (适用于第二代功能)
  • 仔细检查我用于该功能的服务 ACC 是 与具有权限的服务acc相同
  • 确保启用了 Identity 平台的 Firebase 身份验证
我还尝试过创建帐户,看看即使我无法注册它,它是否已经可以正常工作。

我唯一的提示是这个警告:

但是,那篇了解更多文章与我已经关注的文章相同。

firebase google-cloud-platform firebase-authentication google-cloud-functions google-identity
1个回答
0
投票
tl;博士

我知道我来晚了,但目前

不可能可以使用第二代函数作为阻塞函数(分配触发器)。这就是为什么您在下拉列表中看不到它。

使用第一代功能作为触发器。

更多信息

我在文档中搜索,文档中没有提到这一点,可能忘记了。我发现一些迹象的唯一文档是:

https://cloud.google.com/functions/docs/calling#2nd-gen-triggers

您可以看到其中提到 Firebase Auth(具有相同后端)的注释。不过,这不是身份平台,更有趣的是,这些阻塞功能显然使用 HTTP 触发器,因此这没有多大意义。

你自己就能看到。当您单击下拉列表中的“创建函数”(不显示您的函数并显示“无”的下拉列表)时,它只允许您选择第一代函数的区域。因此,这虽然隐含地告诉您,那里只能拥有第一代功能。

我今天也发现了困难。我尝试部署到

europe-west4

(仅适用于第二代功能)。所以我不得不切换到第一代,
europe-west3

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