【问题标题】:Can I add a domain to Firebase hosting via the API?我可以通过 API 将域添加到 Firebase 托管吗?
【发布时间】:2020-03-04 18:41:05
【问题描述】:

我希望能够使用 API 而不是 Web UI 将域添加到 Firebase 托管,这可能吗?

我想添加可能数百个域,Firebase 中每个项目是否有域限制?

【问题讨论】:

  • 来自 Firebase 支持:每个 Firebase 帐户限制为 36 个域。

标签: firebase firebase-hosting


【解决方案1】:

据我从整个CLI documentation 可以看出,没有任何方法可以做到这一点。

让我们退后一步,考虑一下 Web UI 流程所涉及的内容,即生成 TXT 记录以添加到您的 DNS 记录中,在验证域上存在所述 TXT 记录后,提供您(授权所有者)的 A 记录) 添加以允许重定向到您的 firebase 托管站点。

在我看来,这种来回手动操作是必要的安全措施。通过 CLI 将其排除在外的唯一方法是为您提供一种方法来验证域的所有权(在许多域注册商中的任何一个注册),并获得更改 A 记录的授权。这些都超出了 Firebase 的范围,并且可能会引入严重的安全漏洞。无论如何,即使它存在,它仍然必须通过 CLI 逐步进行并且有点手动,而不是听起来像您正在寻找的单个命令。

【讨论】:

  • 谢谢,但我不明白这怎么会是一个安全问题。 CLI 将与 Web 控制台类似地进行身份验证。这与刚刚在终端中完成的 Web 界面的消息交互相同。但是能够以编程方式获取 TXT 值,我可以编写一个服务器,允许不受信任的人将域添加到我的 Firebase 控制台。他们会将 A 和 TXT 记录添加到他们自己的域中(或者我的服务器可以使用注册商的 API 来执行此操作)。
  • 根据我的评论,来回(UI 或 CLI)是一种安全措施,而其自动化引入了潜在的(不确定的)安全漏洞。可以将其想象为在 PayPal 或 Venmo 上验证您的银行帐户......整个存入便士、验证和提取它是手动且耗时的设计。现在想象一个 API,它允许您通过 CLI 验证数百个帐户。首先,拥有数百个帐户将是一个边缘案例(就像 100 个域一样),并且创建这样的 API 来满足它会带来潜在的安全风险,可能不值得。
  • 验证账户添加了当前银行系统不存在的新消息交互(userOwnsAccount()、accountIsActive())。如果银行系统将这些功能标准化,我怀疑 Paypal 和 Venmo 是否会保留人机交互部分。我认为您对边缘情况的看法是正确的 - 我认为这是它没有与 Web UI 对应的 CLI 的唯一原因。
【解决方案2】:

目前无法通过 API 自动添加自定义域。

它也不允许您创建经销商或多租户项目(即动态连接大量域或子域),因为您不能将超过 36 个域连接到一个项目。

【讨论】:

  • 有趣的评论,这是否记录在某处?它对我的工作产生了巨大的影响。谢谢加藤
  • 提到了here,但没有在quotas doc 中看到。我会添加一个错误。
猜你喜欢
  • 1970-01-01
  • 2015-05-29
  • 1970-01-01
  • 1970-01-01
  • 2018-07-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多