[英]Converting Single DB ASP.NET Site into MultiTenant - Membership and Roles Dilemma
我正在将单个SQL DB网站(ASP.NET / VB.NET)更改为多租户应用程序,其中每个客户端都有自己的数据库。
在旧站点中,所有ASP角色,登录名和提供程序都指向单个数据库。
现在我们有多个数据库,我想知道最好的架构/技术是什么。 有一个数据库可以配置租户,例如公司名称,各种设置(通常位于web.config中)和连接到租户数据库的连接字符串。
我们是否应该在配置租户的单个数据库中拥有所有成员资格和角色,或者我们是否在每个租户数据库中拥有成员资格和角色? 选项2似乎很棘手,因为我认为ASP.NET只喜欢在web.config中定义的一组RoleProviders。
有人曾尝试过此或获得任何建议吗?
如果您正在使用内置提供程序的ASP.Net成员资格模型,那么将它们放入一个数据库中是最简单的,如您所示。
一个选项,我没试过,是在web.config文件中定义每个租户的提供程序。 这将允许每个租户拥有自己的成员资格数据库,并允许您避免租户之间的用户名冲突(如果这是一项要求)。
您应该能够在运行时配置ASP.NET成员资格数据库连接字符串。 此线程有一些选项,包括自定义成员资格提供程序或通过Global.asax.cs在请求生命周期的早期更改值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.