【问题标题】:Shared data on a multi tenant architecture [closed]多租户架构上的共享数据[关闭]
【发布时间】:2023-02-13 22:55:22
【问题描述】:

我们正在开发一个多租户系统,使用每个租户的数据库图案。

此外,我们还有另一个“全球”(在租户之间共享)数据库,其中包括我们想要唯一存储的数据,如公司、港口等。

这样,我们必须在租户数据库中引用我们的全局数据(如 companyId),这意味着 我们必须在执行 select 语句时连接两个不同的数据库(如果需要)。

尽管我们在这方面取得了进展,但我们仍然不确定解决方案。

您认为是否有更好(更优雅)的方法来完成此任务? (比如将“全局”数据复制到我们认为难以管理的每个租户)

【问题讨论】:

    标签: sql-server database-design architecture multi-tenant


    【解决方案1】:

    您绝对应该最小化此共享数据。进行跨数据库连接不仅很尴尬,而且最终会带来安全风险。根据定义,所有租户都可以访问该数据库,如果没有行级安全实施,您将面临泄露租户数据的风险。

    如果我是你,你真的想要这个综合查找表。我会在联合所有目标数据库配置表的“共享”数据库中创建一个视图。这样,数据就存在于每个租户的数据库中,但可以设置权限,使租户无法访问共享数据。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-03-21
      • 1970-01-01
      • 2013-12-26
      • 2021-11-26
      • 2014-01-26
      • 2011-12-22
      • 2019-05-18
      • 1970-01-01
      相关资源
      最近更新 更多