当用户可以在多个租户中时,使用公共用户池进行多租户

Using common user pool for multi-tenancy when a user can be in multiple tenants

一些租户将需要他们的用户使用公司身份登录。我更愿意为所有租户使用单用户池。由于同一用户可以在多个租户中,我们如何识别使用哪个企业身份登录用户

我们可以在租户元数据中为每个租户设置身份验证类型或模式。例如:Tenant1:CustomAuthentication。 Tenant2:Azure AD,Tenant3:本地 LDAP 等

在这种情况下,当用户输入他的电子邮件地址或选择租户(通过租户下拉列表或租户特定 URL 等...),我们选择正确的身份验证模式,然后进行重定向因此。收到有效身份验证后,我们会在 User pool 中进行交叉检查,然后允许用户根据通过角色和特权配置的权限访问应用程序。

这样,我们的租户、租户用户都在一个共享/公共池中,应用程序数据可以隔离到不同的数据存储中。