我正在使用ASP.NET MVC构建一个多租户应用程序,并且在验证用户时遇到了问题。
情况如下:
我有:
- 一个包含用户(ID、姓名、名字、电子邮件)的表格。这个表格是为了让注册在两个租户中的用户不需要再次登录。 - 一个包含一个租户的登录名和密码的表格,其中包括Tenantuser(ID、TenantID、UserID(对应User表的外键)、UserName、Loginname、Password、Active)。
例如:
- UserX注册了TenantA和TenantB - UserX使用TenantA的登录名和密码登录 - 系统会在TenantUser表格中验证登录名和密码是否正确 - 系统会验证userID与User表中的ID是否相符 - UserX前往TenantB并自动登录
我的问题是:
如何创建一个自定义提供程序,以便我可以在租户中检查登录名和密码?
例如:
还有其他解决此问题的方法吗?
情况如下:
我有:
- 一个包含用户(ID、姓名、名字、电子邮件)的表格。这个表格是为了让注册在两个租户中的用户不需要再次登录。 - 一个包含一个租户的登录名和密码的表格,其中包括Tenantuser(ID、TenantID、UserID(对应User表的外键)、UserName、Loginname、Password、Active)。
例如:
- UserX注册了TenantA和TenantB - UserX使用TenantA的登录名和密码登录 - 系统会在TenantUser表格中验证登录名和密码是否正确 - 系统会验证userID与User表中的ID是否相符 - UserX前往TenantB并自动登录
我的问题是:
如何创建一个自定义提供程序,以便我可以在租户中检查登录名和密码?
例如:
public abstract bool ValidateUser(string username,string password);
我应该如何告诉我的提供商用户所在的租户?
我该如何将其更改为类似以下内容:
public overrides bool ValidateUser(string username,string password, string tenant); ?
还有其他解决此问题的方法吗?