2013-06-21 7 views
6

こんにちはSAASモデルとマルチテナントに関する質問があります。SAASのマルチテナントクライアント固有のカスタマイズ

私が知る限り、SAASマルチテナントアプリケーションとは、すべてのクライアントに対して一般的な機能を意味します.Neathの下にUIと機能をカスタマイズしています。

私はいくつかの顧客に追加のクライアント固有のカスタマイズが必要な場合、どのように達成できますか?

私はあなたがそのような で発生見にapreciateの答えについては私はSalesForce

のアプローチについて知っている - データベースレベルの下のカスタマイズ、 - 一般または におけるバックエンドのアーキテクチャ - このトピックのすべてのリンク。

答えて

9

マルチテナントアプリケーションをカスタマイズするには、次の2つの方法があります。 1.プレゼンテーション層の変更 2.システム変更。

以下は、それらが

1)ユーザインターフェースとブランディング、

2)ワークフローやビジネスルール、

あり、マルチテナント環境におけるWebアプリケーションに好適な典型的なカスタマイズオプションであります

3)データモデルの拡張、及び

4)アクセス制御

1はプレゼンテーション層の変更に属し、残りはすべてマルチテナントアプリケーションでシステムレベルの変更を形成します。

MVCはプレゼンテーション層のカスタマイズオプションとみなされ、テナントに独自のテーマ、ロゴ、カスタムレイアウト、カスタムコントローラ、カスタムページセクションを持たせることができます。システム設定については

は、しかし、次のようにこれを達成するための多くの方法があるミドルウェアレベルでのデータベースレベル

  • カスタマイズで最も普及し

    1. カスタマイズされています。

    SaaSアプリには、機能と実装があります。後のケースでは、テナント固有の構成があり、その構成に基づいて検討中のテナントに対して呼び出される実装を管理し、サービスを提供します。これらは、テナントが認識しているカスタム依存性注入メカニズムを使用して実現され、このプロセスを容易にするために実行時に消費されるテナント固有の構成も必要となります。

    (1)の場合、マルチテナント環境でテナント間で構成やメタデータを共有しないように、テナント識別子に基づいてdb内のデータを分離する必要があります。

    だから主な構成要素は、マルチテナントのデータ記憶

  • テナント固有の認証[フォーム署名/シングルサインオンなど..]
  • テナントコンテキストから得られる

    1. テナント識別子となり

      IMHOはトピックが幅広いため、より具体的な分野をご紹介できる場合は、その実装についてお話します。

      希望していますが、あなたの質問にお答えします。更新を投稿してください。

  • +0

    ありがとうございます。あなたの答えは本当に役に立ちます。あなたは.NETで実装経験がありますか? – Alexandr

    +0

    @Alexandr:Alexandrありがとうございます。私は実装経験はありますが、DIベースのテナント注入部品ではありません。私はこの時点でいくつかの実装とブログに出くわしました。この投稿に関連するあなたの最終的な質問を投稿してください。 – Saravanan

    関連する問題