【发布时间】:2010-05-20 14:17:14
【问题描述】:
我正在使用 ASP.NET MVC 构建一个多租户应用程序,但在验证用户时遇到了问题。
情况
我有:
-带有用户(ID、姓名、名字、电子邮件)的表 制作这张表,让一个注册在两个租户中的用户不需要重新登录。
- 一个带有 Tentantuser(ID, TenantID, UserID (FK to table User), UserName, Loginname, Password, Active) 的表 此表包含一个租户的登录和密码。
示例:
- UserX 在 TenantA 和 TenantB 中注册
- UserX 使用 TenantA 的登录名和密码登录 TenantA
- 系统验证TenantUser表中的登录名和密码是否正确
- 系统验证 UserX 哪个 userID 对应于表 User 中的 Id
- UserX 转到 TenantB 并自动登录
我的问题:
如何创建自定义提供程序以便检查租户中的登录名和密码? 例如:
public abstract bool ValidateUser(string username,string password);
我如何告诉我的提供商用户是哪个租户?
我怎样才能改变这种情况:
public overrides bool ValidateUser(string username,string password, string tenant); ?
或者还有什么方法可以解决这个问题?
【问题讨论】:
标签: asp.net asp.net-membership membership-provider multi-tenant