在客户端级别而非最终用户级别保护 Firebase REST API

问题描述

我正在尝试创建 REST API(通过 Firebase 云功能)并将其发布给我的客户,以允许他们创建他们的移动应用程序。他们将创建的移动应用程序由公共用户使用。但是,用户不应该处理我们的 API 和身份验证。所以我不需要最终用户身份验证。使用 “客户 ID”“api 密钥”取决于我们的客户(应用程序制造商)。 根据我的研究,Firebase Admin SDK 可能不是一个好的解决方案,因为我们担心客户端级别的身份验证。

我正在寻找一种标准解决方案来为 3rd 方客户端生成 api 密钥。此密钥生成不是手动过程,而是客户端将用于获取密钥的服务。类似于 3rd 方开发人员的 google map api。我们希望跟踪列入白名单的客户,而无需他们的应用用户进行身份验证。

我非常感谢为我们的 REST API 找到最佳解决方案的建议和指南。

解决方法

我想到的第一个解决方案是新的Firebas App Check。它会限制您为项目列入白名单的应用程序和网页之外的任何访问。我不知道这在您的用例中是否可行(与其他应用程序的合作方式),但我肯定会先尝试一下。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...