Web Api 2を使用しており、カスタムトークンベースの認証を実装しています。それは正常に動作していますが、私は応答でいくつかの追加のプロパティ値を取得したい。私は新しいクレームを追加し、新しいプロパティを追加して応答でそれらの値を取得しましたが、私はまだ「access_token」、「token_type」、「expires_in」という3つの値しか返していません。どのようにしてより多くの値を得ることができますか? これは私のコードです:Web api 2認証でトークンを使用して追加データにアクセスできない
public override async Task GrantResourceOwnerCredentials(OAuthGrantResourceOwnerCredentialsContext context)
{
if(context.UserName == "user" && context.Password=="user")
{
var identity = new ClaimsIdentity(context.Options.AuthenticationType);
identity.AddClaim(new Claim(ClaimTypes.Name, context.UserName));
identity.AddClaim(new Claim(ClaimTypes.Role, "Administrators"));
identity.AddClaim(new Claim("MyClaim", "I don't know"));
var props = new AuthenticationProperties(new Dictionary<string, string>
{
{ "name", "John" },
{ "surname", "Smith" },
{ "age", "40" },
{ "gender", "Male" }
});
var ticket = new AuthenticationTicket(identity, props);
context.Validated(ticket);
}
else
{
context.SetError("Invalid_Grant", "Provided username and password is incorrect");
return;
}
}
これは私が "access_tokenは"
{
を取得しています出力されます: "XXXXX"、 "TOKEN_TYPE": "無記名"、 を " expires_in ":86399 }
** GrantResourceOwnerCredentials ** – Aravind
@AravindパブリッククラスAuthorizationServerProvider:OAuthAuthorizationServerProvider {} ----- –