Я хочу изменить значение претензии с помощью токенов обновления. Мой поставщик токенов обновления выглядит так:
public class MyRefreshTokenProvider : AuthenticationTokenProvider
{
public override void Create(AuthenticationTokenCreateContext context)
{
...
var claim = context.Ticket.Identity.FindFirst(ClaimTypes.UserData);
if (claim != null)
{
context.Ticket.Identity.RemoveClaim(claim);
context.Ticket.Identity.AddClaim(new Claim(ClaimTypes.UserData, "New Value"));
}
context.SetToken(context.SerializeTicket());
}
public override void Receive(AuthenticationTokenReceiveContext context)
{
context.DeserializeTicket(context.Token);
}
}
И в классе запуска:
app.UseOAuthBearerTokens(new OAuthAuthorizationServerOptions
{
...
RefreshTokenProvider = new MyRefreshTokenProvider()
});
Запрос токена обновления завершается без ошибок. Но когда я использую новый токен доступа, значение утверждения остается старым.
Верен ли мой подход? Или как я могу изменить значение утверждения в аутентификации Bearer?