繁体   English   中英

将单个数据库ASP.NET站点转换为MultiTenant - 成员资格和角色困境

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM