2017-09-19 17 views
1

トークン検証を使用しているWeb APIを使用していますが、そのトークンを送信したユーザーを取得したいとします。Web APIからユーザー情報を取得するOAuthベアラー認証

Request.GetOwinContext().Authentication.User.Identity.Name; // returns null 

どうすれば実現できますか?

ありがとうございました。私は

ControllerContext.RequestContext.Principal.Identity.IsAuthenticated 

は、ユーザー名がトークンにこのようにリンクされていることを確認し、認証されたかどうかを確認するために、このよう

ControllerContext.RequestContext.Principal.Identity.Name; 

owinを使用して、現在のユーザーを取得

答えて

1

(それはありますオン私の

SimpleAuthorizationServerProvider:OAuthAuthorizationServerProvi DER

クラス)

ClaimsIdentity oAuthIdentity = new ClaimsIdentity(context.Options.AuthenticationType); 
       oAuthIdentity.AddClaim(new Claim(ClaimTypes.Name, context.UserName)); 
+0

ControllerContext.RequestContext.Principal.Identity.Name。 IsAuthenticatedがtrueであっても、nullを返します。私は何が欠けているかも知っていますか?ありがとうございました! –

+0

クレームにユーザー名を追加してもよろしいですか?私の回答は –

+1

でした。私は主張のプロパティを名前で埋める必要があることを知らなかった。ありがとうございました! –

関連する問題