我正在考虑使用多租户的身份服务器和 asp.net 身份。这个想法是每个租户都将拥有自己的数据库或包含用户详细信息的共享数据库。
在决定应针对哪个数据库身份服务器进行身份验证时。我通过了租户 acr_value,它允许登录屏幕显示正在登录的租户,并且我创建了自己的中间件,该中间件注入到我的 dbcontext 的构造函数中
public MyDbContext(DbContextProvider contextProvider) {}
public DbContextProvider (IHttpContextAccessor context, IdentityServerContext ctx)
{ //we can get the host/acr_values in here }
问题是当身份服务器重定向到连接/令牌或用户信息时 - 不再有任何东西可以识别客户端,没有 redirect_uri 或租户,这意味着我无法生成我需要的连接字符串。
我想的可能吗?