使用 Keycloak 的大规模多租户场景

Pet*_*ton 10 multi-tenant keycloak

我试图了解如何在大规模多租户场景中使用 Keycloak。

标准方法似乎是为每个租户使用一个领域。这隔离了每个租户的用户和设置,很有意义。

多租户Keycloak 示例中,它说它“展示了Keycloak 多租户支持的最简单可能的场景”(强调我的)。我可能对此读得太多了,但对我来说这意味着还有其他标准方法。尽管如此,我还没有找到关于这些选项的太多讨论。

我还读到,超过 100 个领域存在潜在的性能问题。可能是这些性能问题已得到修复,但这也向我表明 Keycloak 不会处理具有 1,000 多个租户的大规模多租户场景。

所以我的问题是:

  • 除了“每个租户一个领域”之外,还有其他推荐的多租户方法吗?
  • 是否有任何大规模的 Keycloak 多租户部署证明其能够应对许多领域?
  • 是否有关于我应该查看的信息来源的建议?

pag*_*gid 0

迄今为止(Keycloak 18 已发布)100 多个领域的性能问题仍然存在。但在现实世界中,这根本不是问题。

只需将您的租户拆分为多个 Keycloak 集群即可。如果您需要集成您的领域,这可以通过跨集群的联合独立于特定集群/实例来完成,因此无需在单个集群上运行所有内容。

从运营的角度来看,在单个集群上拥有如此大量的租户/领域也不是最理想的,因为您将很难组织维护和停机时间。因此,将事情分开并不是最糟糕的事情。