Получение времени, когда был создан токен доступа?

Я пытаюсь получить утверждение, содержащее дату создания токена... Я пробовал следующее:

var createdDate = contextAccessor.HttpContext.User.FindFirstValue("IssuedUtc");

var createdDate = contextAccessor.HttpContext.User.FindFirstValue("iss");

var createdDate = contextAccessor.HttpContext.User.FindFirstValue(ClaimTypes.AuthenticationInstant);

1 ответ

Решение

При использовании JWT в качестве формата токена доступа вы можете использовать iat Запрос.

При использовании непрозрачного формата по умолчанию дата создания сохраняется не как заявка, а как свойство аутентификации. Вы можете получить его с помощью AuthenticationManager API:

var result = await contextAccessor.HttpContext.Authentication.GetAuthenticateInfoAsync(OAuthValidationDefaults.AuthenticationScheme);
var date = result.Properties.IssuedUtc;

Примечание: второй вариант также работает с JWT, просто замените OAuthValidationDefaults.AuthenticationScheme постоянный JwtBearerDefaults.AuthenticationScheme,

Другие вопросы по тегам