Проверьте наличие токена JWT в кеше памяти перед выполнением кодов в API.C#

Место общения программистов C#
Гость
Проверьте наличие токена JWT в кеше памяти перед выполнением кодов в API.

Сообщение Гость »


Я работаю над проектом .Net Core с сотнями API.

API принимают для авторизации токен JWT.

[Authorize(AuthenticationSchemes = JwtBearerDefaults.AuthenticationScheme)] Поскольку токены JWT не могут быть уничтожены до истечения срока действия, мне нужно убедиться, что токен становится непригодным для использования при выходе пользователя из системы.

Я сохранил токен JWT с ключом в кеше памяти при его создании.

memoryCache.Set(ob.MailId, Token.Token); Я хочу разрешить выполнение кода только в том случае, если токен существует в кеше памяти, чтобы, когда пользователь выйдет из системы, я удалю токен из кеша памяти, тогда API будет недоступен с тем же токеном.

Я не хочу включать проверку условий во все API, и у меня нет особых знаний об авторизации.

Есть ли способ поместить условие вместе с заголовком таким образом, чтобы в случае сбоя условия возникало UnauthorizedAccessException?

Предложите мне эффективный способ сделать это.

Вернуться в «C#»