我开始在 ASP.NET MVC2 中构建 SaaS 业务线应用程序,但在开始之前,我想建立良好的架构基础。
我将采用共享数据库和共享模式方法,因为数据架构和业务逻辑将非常简单,效率和成本效益是关键问题。
为了确保租户之间数据的良好隔离,我想实现租户视图过滤器安全模式(看看这里)。为此,我的应用程序必须根据登录应用程序的用户来模拟不同的租户(数据库登录)。登录过程需要尽可能简单(它不会是企业级软件)——所以客户应该只输入他们的用户名和密码。
用户将通过他们自己的子域(使用子域路由)访问他们的数据,例如http://tenant1.myapp.com或http://tenant2.myapp.com
满足这种情况的最佳方法是什么?