私が尋ねている質問とは異なる質問に人々が答えてくれると確信しているので、注意深くお読みください。IdentityServer4 *で識別情報を判別する* SERVER *
私は、ユーザーが認証する3つの方法(私たちは、現時点では真実の複数のソースを持っている)ことができますIdentityServer4サーバ、持っている:カスタム(SQLでユーザーID/PWD)、LDAP(AD内のユーザー/ PWD)&一体化窓を(パスワードは必要ありません)。これらはうまく動作し、私がクライアントMVCアプリケーションにいるとき、私が認証に使用した方法にかかわらず、アイデンティティとクレームを得ることができます。
質問はどのユーザーが(クライアントのMVCではなく)サーバーにログオンしているのかを理解する方法です。私はサーバーがこの情報を保持する必要がありますクッキーを維持していることがわかります。 User.Identity.Name
は、自分のソフトウェアに「ログイン」する前にWindows認証情報を返すことを覚えておいてください。すなわちUser.Identity.IsAuthenticated
は常にtrue
を返します。彼らは、SQL認証方法を選択することができます。
私はつまりHttpContext.Authentication.GetAuthenticationInfoAsync
とは何かを持っていますが、SignInAsync
への最後の呼び出しがそれを指定していないオーバーロードと呼ばれるように私は、渡すために何authenticationScheme
上明確ではないんだ推測しています。