当前位置: 首页 > 知识库问答 >
问题:

针对SAAS的多租户客户端特定定制

袁旻
2023-03-14

你好,我有一个与SAAS模型和多租户相关的问题。

据我所知,SAAS多租户应用程序意味着所有客户机的通用功能,以及一些用户界面和功能的定制。

如果我需要为一些客户进行额外的客户特定定制,我如何实现它?

我了解SalesForce的方法

至于答案,我很高兴看到你们在数据库级别的定制,后端架构,或者这个主题的任何链接方面都有经验。

共有1个答案

姬振
2023-03-14

定制多租户应用程序有以下两种方式1.表示层更改2.系统更改。

以下是在多租户环境中的web应用程序中首选的典型自定义选项:

1) 用户界面和品牌,

2) 业务规则和工作流程,

3) 数据模型扩展,以及

权限改造

其中1属于表示层更改,其余均形成多租户应用程序中的系统级更改。

MVC被认为是演示层定制选项,其中我们可以选择允许租户拥有自己的主题、徽标和自定义布局或自定义控制器和自定义页面部分。

对于系统设置,有很多方法可以实现这一点,但以下是最普遍的方法

  1. 数据库级别的定制

在SaaS应用程序中,有一些功能和实现。在后一种情况下,将有一个特定于租户的配置,该配置根据租户的配置控制要为其调用的实现,然后提供服务。这些都是通过一个定制的依赖注入机制来实现的,该机制是租户感知的,并且还需要一个特定于租户的配置,可以在运行时使用该配置来促进这个过程

在(1)的情况下,数据库中的数据应基于租户标识符进行隔离,以便在多租户环境中租户之间不共享配置或元数据。

所以主要的组成部分是

  1. 从租户上下文中获得的租户标识符
  2. 多租户数据存储
  3. 租户特定认证[表单签名/单点登录等...]

IMHO,由于您的主题很广泛,如果您能向我们介绍更具体的领域,我们将讨论它们的实施。

希望这能回答您的问题,请发布您的更新。

 类似资料:
  • 由于我有,我的应用程序将提示所有URL的证书,那么对于一些特定的URL(如或)我是否可以绕过URL?

  • 我必须在j2ee中开发一个多租户SaaS应用程序,从Iaas和PaaS开始实现三种云模型,我选择了openstack和openshift origin。SaaS应用程序的第一个标准是多租户,我知道有三种方法来实现它——单独的数据库——共享数据库,单独的模式——共享数据库,共享模式。我在这里迷失了方向,因为许多框架,比如ATHENA,ORM,比如hibernate,还有TOPLINK。我需要帮助了解

  • 我正在使用Java、Spring、Struts2和Hibernate设计一个多租户SaaS Web应用程序。经过一些研究,我选择在共享数据库、共享模式、共享表的方法中实现多租户。并用tenantid标记每个db行。 我已经重写了我的应用程序,所以管理者和DAO将把tenantId作为一个参数,只为正确的数据库资源服务。 当获取信息时,这对所有视图来说都是完美的。也用于创建新的东西(使用登录的用户t

  • 问题内容: 您可能需要在这里与我联系,以免使某些术语有些错误,因为我什至没有意识到它属于整个“多租户”“软件即服务”类别,但是在这里确实如此。 我已经为客户开发了会员系统(用PHP)。我们现在正在考虑将其作为其他客户的完全托管解决方案,提供一个子域(甚至他们自己的域)。 就数据存储而言,我似乎在表上拥有的选项是: 选项1-将 所有内容存储在1个大数据库中,并在需要它的表上有一个“ client_i

  • 问题内容: 在Spring 3应用程序中,我试图通过Hibernate 4的本机MultiTenantConnectionProvider和CurrentTenantIdentifierResolver实现多租户。我发现在Hibernate 4.1.3 中存在此问题,但是我正在运行4.1.9并仍收到类似的异常: 以下是相关代码。在I中,我现在只写了一些简单的代码,每次都只返回一个新的连接,并且在这

  • 目前为止,我们已经让用户页面在多租户风格下工作。为使它工作,我们看起来并没有做太多的变化。但请记住,我们正在对一个原来不是多租户的系统作修改。 让我们在 Roles 表应用类似的原则。 再一次,一个租户的用户在不能查看或修改其他租户的角色,每个租户的用户是相互独立工作的。 我们先在 RoleRow.cs 添加 TenantId 属性: namespace MultiTenancy.Administ