2017-06-30 4 views
1

AspNet.Security.OpenIdConnect.Serverを使用してOpenID Connectサーバーを実装しようとしています。ASOSを使用したアクセストークンのカスタムユーザーデータ

許可サーバーでトークンを発行するときに、アクセストークンにカスタムユーザーデータを配置し、トークンの検証と要求処理中にリソースサーバーでカスタムユーザーデータを取得することはできますか?

例:ユーザーごとにトークンを取得するために使用されたIPアドレスをアクセストークンに書きたいとします。リソースサーバーで、トークンの検証中にトークンから現在のユーザーのIPアドレスとIPアドレスを比較したいと考えています。

もう一つの例:私はトークンにユーザーのロールを作成し、その後、WEBAPIアクションフィルタまたはアクション自体でそれらを取得したい

答えて

1

は、単に請求とIPアドレスを格納考えてみましょう:

identity.AddClaim("ip_addr", HttpContext.Connection.RemoteIpAddress.ToString(), 
    OpenIdConnectConstants.Destinations.AccessToken); 

その後APIコントローラで、次を使用して取得します。

var address = User.FindFirst("ip_addr").Value; 
関連する問題