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

时间:2013-06-21 10:08:10

标签: asp.net-mvc multi-tenant saas

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

据我所知,SAAS多租户应用程序意味着通用功能 对于所有客户端,在Neath下进行一些UI和功能的自定义。

如果我需要为某些客户制作额外的客户特定定制,我该如何实现?

我知道SalesForce

的方法

至于答案,我很高兴看到你有这样的经历   - 数据库级别的自定义,   - 一般或后端的后端架构   - 此主题的任何链接。

1 个答案:

答案 0 :(得分:9)

有两种自定义多租户应用程序的方法 1.表示层更改 2.系统改变。

以下是多租户环境中Web应用程序中首选的典型自定义选项,它们是

  

1)用户界面和品牌,

     

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

     

3)数据模型扩展,

     

4)访问控制

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

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

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

  1. 数据库级别的自定义
  2. 中间件级别的自定义。
  3. 在SaaS应用程序中,有功能和实现。在后者的情况下,将存在租户特定配置,其基于其配置来管理要为所考虑的租户调用哪个实现,然后提供服务。这些是使用自定义依赖注入机制实现的,该机制可以识别租户,并且还需要在运行时期间可以使用的特定于租户的配置,以便于此过程。

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

    所以主要组件将是

    1. 从租户上下文获取的租户标识符
    2. 多租户数据存储
    3. 租户特定身份验证[表格签名/单点登录等]。
    4. 恕我直言,由于你的主题很广泛,如果你能告诉我们更具体的领域,我们将讨论它们的实施。

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