firebase - 为什么 firebase 电子邮件链接在 URL 中包含 apiKey?

标签 firebase firebase-authentication

<分区>

我正在通过 Firebase 使用电子邮件开发电子邮件验证和密码重置。所有功能都运行良好。但是,我有一个担忧。

当我发送带有“操作 URL(链接)”的电子邮件时,apiKey 会暴露在 URL 中,即使示例 url 写成 "https://example.com/acctmgmt?mode=action&oobCode=code "。到达电子邮件的实际 URL 是这样的 "https://example.com/acctmgmt?mode=action&oobCode=code&apiKey=key "

我已经搜索并了解 apiKey 的暴露不是一个大问题,如果我在 Google 控制台中设置 referrers,但我认为暴露 apiKey 并不理想。

在url中暴露还是不暴露基本没问题?如果不是,我如何将其隐藏在 URL 中?

P.S 我正在从 Android 发送电子邮件。

最佳答案

当您发布应用时,该 API key 字符串就是公开信息。这没有什么私密的。您可以将其视为您项目的公共(public)唯一标识符,而不是私有(private) API key 。来自任何来源(应用程序内部和外部)的任何 API 调用都需要知道如何识别您的项目,这就是它们的工作方式。否则,验证电子邮件无法提供实际验证项目用户的链接。

如果您担心有人可以使用此 key 访问您的项目,则需要查看 Firebase 安全规则。这是防止对项目中的资源进行意外访问的唯一方法。

关于firebase - 为什么 firebase 电子邮件链接在 URL 中包含 apiKey?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53976174/

相关文章:

ios - 第二次登录后无法重新验证 Google 登录。 ( swift 3)(火力基地)

mysql - 将 Android Firebase Auth 用户安全地存储在 MySQL 数据库中

android - 返回 RESULT_CANCELED 的 Google 登录 fragment

google-cloud-platform - Google Cloud Identity Platform (CICP) SAML 工作流程失败

javascript - 登录后 Firebase 慢重定向?

javascript - 使用 Firebase Data Vue.js 动态填充数组

firebase - 从 Admin SDK 调用 Firebase Callable Cloud Function 函数

ios - 在闭包 Swift3 之外访问变量

android - 我可以执行多深的 Firestore 查询