Этот более ранний пост может дать вам несколько идей - из предыдущего стека технологий MS, который следовал тем же понятиям.
Возможно, вам повезет с опцией SlidingExpiration. Традиционно это было проблемной областью c из-за 2 различных типов атрибута Authorize.
WIDER POINT
Более чистая архитектура, основанная на большинстве стандартов Решение с простейшим кодом и лучшим управлением пользовательским интерфейсом состоит в том, чтобы избежать смешивания кода Web и API в одном компоненте на стороне сервера.
Конечно, это, вероятно, выходит за рамки вашего текущего проекта, но для следующего вы можете рассмотреть:
- ASP. Net Core Web API, который проверяет токены
- веб-интерфейс без файлов cookie, реализованный в виде одностраничного приложения
- веб-статистика c хостинг контента
- пользовательский интерфейс отправляет токены в API
- Пользовательский интерфейс молча обновляет токены, не задействуя серверную часть
Если интересно, посмотрите на мой Azure образец AD: