私はマルチテナントでidentityserverとasp.net IDを使用しています。アイデアは、各テナントがユーザーの詳細を持つ独自のデータベースまたは共有データベースを持つことです。Identityserver identitydbContent per tenant
認証するデータベースを決定するとき。私はログイン画面がどのテナントがログインしていると私は私のdbcontextのコンストラクタに注入し、私自身のミドルウェアを作成して表示することができますテナントacr_valueを通過
public MyDbContext(DbContextProvider contextProvider) {}
public DbContextProvider (IHttpContextAccessor context, IdentityServerContext ctx)
{ //we can get the host/acr_values in here }
identityserverを接続するためにリダイレクトするときに問題がある
/tokenまたはuserinfo - クライアントを識別するためのものはなくなりました。redirect_uriやテナントは必要ありません。これは、必要な接続文字列を生成できないことを意味します。
私は可能なことを考えていますか?
これは元々私が達成しようとしていたものでしたが、一部のクライアントはデータを他のユーザーと区別することに非常に特化しています。つまり、共有データベースにユーザーデータを入れることができなくなります。 – kiwijus
クライアントは、ログインユーザー名とパスワードハッシュを別々にする必要がありますか? –