django - Django Allauth 和 G 套件,如何处理多个域?
问题描述
我们目前正在开发一个 Django CRUB 风格的 web 应用程序,其中多个“租户”每个都有自己的“成员”(链接到该租户的用户)、“课程”等。
我们想包括一个“用谷歌登录”选项,因此转向了 Django-allauth。大多数租户使用带有自己[name]@[tenant].com
地址的 Google G 套装。
在创建帐户后将用户分配给他们的租户,为了防止租户 B 的用户在租户 A 中创建帐户,我们包含了一个功能,该功能检查电子邮件的域是否与租户对象。只有当这种匹配确实发生时,才会创建帐户。
然而,最近我们的一位租户开始使用超过 1 个电子邮件域,这需要我们更新代码和租户对象。(使代码处理多个电子邮件域,改变模型以便租户可以拥有多个电子邮件域)
这让我们想知道是否有更好的方法来做到这一点——我们一直在调查谷歌是否提供了company_id
回复,或者任何可以帮助我们识别除电子邮件域之外的公司的东西。这些值可以帮助我们检查用户是否确实属于该租户,而无需不断检查/更新电子邮件域字段 - 但我们无法找到任何此类内容。
对这个类似的 stackoverflow 问题的回应表明了与我们目前采用的方法类似的方法,但那是五年前的事了——这仍然是最好的方法吗?
解决方案
推荐阅读
- ios - IQKeboard 管理器在转到上一个文本字段时留下大量顶部空间
- c - 验证签名的 PE 文件
- sql - 数据字段中每个不同值的计数
- sql - Postgres 使用带有 `split_part` 的索引
- sql - T-SQL 完全外连接(提供示例)
- c# - 需要将离线和触控 ID 添加到 Microsoft 身份验证层
- dataweave - Dataweave 日期格式为 GMT 时区,夏令时
- crash - 在远程 X11 中:xclock 有效,但 gitk 或 git gui 无效
- flutter - 找不到消费者提供者的祖先或找不到提供者
- r - 如何在同一数据集中(可能使用 stringr)合并具有相同名称的数据?