【问题标题】:Can I use firestore and GCP identity platform with multiple domains?我可以在多个域中使用 Firestore 和 GCP 身份平台吗?
【发布时间】:2021-05-16 12:07:38
【问题描述】:

我们开发 SaaS 已有一段时间了。

我们决定使用Google Cloud Identity Platform来处理multi-tenant authentication,并将firestore作为我们的主数据库,但是我有一些疑问。

我可以将 Identity Platform 用于多个域和子域吗?

之所以想到这个问题,是因为在应用程序中,除了免费子域之外,我还允许我的客户连接他们的自定义域,例如:

Client1 将拥有 client1.com 和 client1.myapp.com

Client2 将拥有 client2.com 和 client2.myapp.com

但是,我想知道我是否可以以这种方式使用身份平台,是否可行。

我还想知道是否可以使用 firestore 执行相同的任务,以便我的客户可以从多个域和子域的单个 firestore 数据库中获取数据。

应该注意的是,我们已经配置了在我们的自定义服务器上托管多个域的机制,我们只是想集成 firestore 和身份平台。

【问题讨论】:

    标签: google-cloud-platform google-cloud-firestore firebase-authentication google-cloud-identity


    【解决方案1】:

    您可以在 GCIP 中为每个租户配置一个授权域。有几种方法可以在 Cloud Firestore 中管理多个租户/域。

    添加根级域集合

    在根级别拆分数据。这意味着您将拥有多个版本的子集合,如果您完全在域/租户内进行查询,这不是问题。但是,您可以使用 collectionGroup 查询来解决这个问题。

    domains / client1 / users  / user123
                      / mydata / mydata1
    domains / client2 / users  / user456
                      / mydata / mydata2
    

    在每个文档中指定域

    您可以坚持使用传统的集合结构并将域添加到每个文档。使用此选项,请记住,每个查询都需要一个索引才能允许您的 domainId 字段。

    / users  / user123
    / users  / user456
    / mydata / mydata1
    / mydata / mydata1
    

    每个文档都需要一个domainId 字段供您过滤。

    {
      displayName: 'Bob Smaith',
      domainId: 'client1'
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-11-07
      • 1970-01-01
      • 2012-05-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多