如何在云计算中实现多租户

如何在云计算中实现多租户

译文 精选
作者: 朱钢 2022-09-13 07:14:29

云计算

云原生 基于云的SaaS解决方案以及大多数其他解决方案都需要实现多租户。让我们快速回顾一下什么是多租户,我们可以从中获得什么,以及如何通过两个简单的层轻松实现它吧!

译者 | 朱钢

审校 | 孙淑娟

基于云的SaaS解决方案以及大多数其他解决方案都需要实现多租户。让我们快速回顾一下什么是多租户,我们可以从中获得什么,以及如何通过两个简单的层轻松实现它吧!

1.何为多租户

从本质上讲,多租户允许服务的各个部分(即各个微服务)虽然服务多个客户,但无需为每个客户部署单独的实例。为了使SaaS解决方案能够以可承受的价格扩展,满足客户需求并具有弹性(即在云资源中具有成本效益),因此它必须支持多租户。

多租户架构提供了许多出色且必不可少的功能:

  • 允许应用程序同时为多个客户提供服务,同时共享底层基础架构和服务;
  • 安全且合规的访问隔离;
  • 负载均衡和扩展。

2.多租户的两个层面

一旦你理解了多租户,它就很容易了。基本上只需要两件事:“应用程序级的访问控制”和“管理数据架构”。

让我们将其分解为两个层面:

  • 数据层面,是关于你如何传输,存储以及管理相互孤立的数据(即底层基础设施如何避免混淆不同租户的数据)。数据层面的多租户通常以数据层上的分区来实现,例如数据存储架构(如何在数据库中保存)、主题(例如,kafka主题)、标签、Domains、Sockets和端口,用于传输中的数据。

具有基于列简单租户分离的数据库表示例

  • 应用程序层面,是如何在逻辑层中实现接收不同租户的上下文和访问,即让相同的代码适用于不同的租户。其中授权是应用程序层面实现多租户必须具备的组件。

使用Permit.io的SDK强制实施多租户的示例应用程序路由

3.实现多租户

授权层,它是从单租户应用程序安全升级到多租户应用程序的最快、最可靠的方法。此外,授权层可以通过在所有相关服务中应用策略来实现分离,而无需更改服务本身。

选择正确的策略模型可以进一步简化这个转换过程。使用经典模型,如RBAC + Tenancy,ReBAC + Hierarchy(租户成为root-level关系)或普通ABAC(将租赁作为属性)。

我们不需要自己实现多租户授权,可以享受现成的开源工具和服务来实现。

4.使用OPA + OPAL实现多租户(开源)

使用开源工具是开始实现多租户授权层的绝佳选择。虽然有多种选择,但开放策略代理(OPA)是最常用的。OPA 充当授权微服务,我们可以将其添加到应用程序中,并使用其专有的Rego语言编写的规则强制实施访问。

将OPA与OPAL(开放策略管理层)相结合,使我们能够大规模管理授权层,使用Pub/Sub主题使我们的代理及时了解策略(Rego代码)和数据(JSON文档)。例如,主题可以是我们的租户名称或租户ID,从而允许我们将代理与每个租户的更改同步。

5.使用Permit.io实现多租户(服务)

应用授权解决方案,如Permit.io 。Permit建立在OPA和OPAL之上,增加了管理界面,包括租户列表、租户资源管理和每个租户的用户管理。

在 Permit.io 的仪表板中切换租户

6.总结

多租户允许我们的应用程序满足多个客户的需求,而无需为每个客户部署单独的实例。gist中的多租户方案由两层面组成:数据和应用程序。实现多租户的最佳方法之一是创建一个授权层,该授权层可以实现分离,而无需更改服务本身。虽然你可以构建自己的授权层,但也有开源项目(例如OPA + OPAL)和服务(例如 Permit.io)允许你在应用程序中实现一个一月访问的多租户授权层。

原文链接:https://dev.to/permit_io/how-to-implement-multitenancy-in-cloud-computing-4pif

译者介绍

朱钢,51CTO社区编辑,2021年IT影响力专家博主,阿里云专家博主,2019年CSDN博客之星20强,2020年腾讯云+社区优秀作者,11年一线开发经验,曾参与猎头服务网站架构设计,企业智能客服以及大型电子政务系统开发,主导某大型央企内部防泄密和电子文档安全监控系统的建设,目前在北京图伽健康从事医疗软件研发工作。

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/296131.html<

(0)
管理的头像管理
上一篇2025-05-21 21:03
下一篇 2025-05-21 21:04

相关推荐

  • jsp空间购买和交换数据空间怎么买,有哪些注意事项?

    购买JSP空间时,是否考虑过数据交换空间的性能?简米科技(2003年始创,23年行业沉淀)与酷番云(工信部一类增值电信全牌照)这类持牌自营机房的服务商,能确保数据交换的高效稳定,是值得优先选择的合作伙伴,为什么JSP空间需要搭配独立的数据交换空间从JSP应用特性看数据交换需求JSP基于Java技术,常用于企业级……

    2026-08-11
    0
  • 建网站用香港空间效果怎么样,香港空间稳定吗?

    建网站用香港空间,对于创建网站资产来说,核心价值在于免备案和全球带宽优势,尤其适合外贸、跨境电商和需要快速启动的项目,但你必须权衡国内访问延迟,并选择有资质的服务商以保证资产安全,香港空间的核心优势与适用边界免备案:节省时间就是节省成本国内服务器需要备案,通常需要10到20天,香港空间无需备案,域名解析后即可上……

    2026-08-11
    0
  • Java连接云数据库的方法是什么,如何操作

    Java连接云数据库的核心在于通过JDBC驱动,结合云服务商提供的连接地址、端口、数据库名及认证信息,配置安全策略(如SSL、IP白名单),即可实现稳定高效的远程数据库访问,基础准备:JDBC驱动与依赖管理连接云数据库前,需要确保开发环境具备对应的JDBC驱动,以最常见的MySQL为例,你需要引入mysql-c……

    2026-08-11
    0
  • 建网站公安联网备案必须使用数据码吗,备案流程是什么

    网站备案包括ICP备案和公安联网备案,两者缺一不可,公安联网备案必须使用服务商提供的数据码,选择持有合法资质的服务商是顺利通过备案的前提,为什么网站必须进行公安联网备案根据公安部《计算机信息网络国际联网安全保护管理办法》,网站开通后30日内必须到公安机关办理备案手续,未完成公安备案的网站,面临责令整改、关闭网站……

    2026-08-10
    0
  • 建一个企业网站大概需要多少钱?,怎么收费?

    建网站要多少钱,没有一个固定的数字,几百到几万都可能,但真正的“创建网站资产”绝不仅仅是初次投入的成本,而是基于长期稳定、合规和安全的持续性投入,其中核心取决于你选择了什么样的“地基”来承载你的业务,建站预算的构成与行业基准当你开始规划一个网站,最先面对的就是预算问题,一个常见的误区是只关注网站“看起来”的建造……

    2026-08-10
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注