为多个客户共享单页应用程序

为多个客户共享单页应用程序

我正在寻找信息来实现以下架构:

  • 在 AWS S3 + Cloudfront 分发版上托管的一个单页应用程序 - 域示例.com
  • 单页应用程序访问的单一 API - 域api.example.com
  • 每家公司都有一个指向 Cloudfront 发行版的专用 DNS 子域名。例如,公司 A 有一个专用子域名companyA.example.com(使用 CNAME 记录实现)
  • 当 A 公司的客户访问该域时companyA.example.com其浏览器与 API 通信,该 API 必须知道客户来自此子域,因此将客户与公司 A 关联起来(请记住,只有一个 API)
  • 当然,所有通信都是 HTTPS

以下几点至关重要:

  • API 必须有一种可靠的方法来了解请求从哪个子域发送 -Origin标头是否可靠?
  • A 公司的客户不能被强迫访问另一家公司的子域名(客户窃取)——我猜这更多的是一个 DNS 保护的问题

在披露所有这些信息之后,我想我可以继续我的问题:

API 如何才能“确定”客户“来自”哪个子域?

相关内容