我们目前正在开发Django CRUB风格的Web应用程序,其中多个“承租人”每个都有自己的“成员”(与该承租人链接的用户),“课程”等。
我们希望包含“使用google登录”选项,因此已转向Django-allauth。大多数租户使用带有自己的[name]@[tenant].com
地址的Google G西装。
在创建帐户后,将用户分配给其租户,为防止租户B的用户在租户A中创建帐户,我们提供了一个功能,用于检查电子邮件的域是否与“域”匹配租户对象中的字段。仅当确实发生此匹配时,才创建帐户。
但是,最近我们的一个租户开始使用多个电子邮件域,这要求我们更新代码和租户对象。 (使代码处理多个电子邮件域,调整模型,使租户可以拥有多个电子邮件域)
这使我们想知道是否有更好的方法可以做到这一点-我们一直在调查Google是否提供了company_id
响应,或者是否有其他方法可以帮助我们确定公司(除了其电子邮件域之外)。这些值可以帮助我们检查用户是否确实属于该租户,而不必不断检查/更新电子邮件域字段-但是我们一直无法找到任何此类信息。
对this similar stackoverflow问题的回答表明,与我们目前采用的方法类似,但这是五年前的事-这仍然是最好的方法吗?