個人のユーザー アカウントを持つ VS2013 MVC5 プロジェクトがあります。それが許可される唯一の認証にStartup {Configuration(IAppBuilder app)}
なるように変更しました。UseOpenIdConnectAuthentication
ユーザーは、すぐに使用できる MVC プロジェクト テンプレート プラミングを使用して、AspNetIdentity DB に登録できます。登録後、ユーザーは OIDC でログインします。
OpenID Connect STS (AspNetIdentity を使用した IdentityServer3) は、クレームとロールを含むセキュリティ トークンを返します。これらのクレームは、 で認証ClaimsPrincipal
されたから入手できますRequest.GetOwinContext().Authentication.User
。
ただし、これらのクレームはController.User
(現在の HTTP 要求コンテキスト) から欠落しています。
ClaimsPrincipal
2つを一致させるのは良いことですか?
質問: その場合、どこでどのようにすればよいですか? 私は専門家ではありませOpenIdConnectAuthenticationNotifications.SecurityTokenValidated
ん
Application_PostAuthenticateRequest
。
System.Web
これは、デフォルトの MVC5 プロジェクト認証ミドルウェアではなく、MVC5 と OpenIdConnect 用の OWIN ミドルウェアを 混在させることの副作用であることを認識しています。