Как преодолеть брешь в системе безопасности при проверке токенов JWT - PullRequest
2 голосов
/ 10 июля 2019

Я использовал угловое приложение для защиты токенов jwt, а в бэкэнде мы использовали базовый API asp.net.После успешного входа в систему мы сохранили токен в локальном хранилище в памяти веб-браузера и вышли из приложения. Просто удалите токен из памяти браузера.

Мы можем запретить пользователю доступ к приложению через приложение, но еслиу некоторых есть токен, с помощью которого он может получить доступ к конечной точке с помощью почтальона и другого инструмента тестирования API.Как мы можем преодолеть эту проблему. Есть ли способ удалить токен или истечь токен вручную.

1 Ответ

0 голосов
/ 11 июля 2019

Отменить токен jwt непросто, стандартного способа отзыва токенов доступа не существует, если только Сервер авторизации не реализует пользовательскую логику, которая заставляет вас сохранять сгенерированный токен доступа в базе данных и проверять базу данных с каждым запросом.

Простым способом является использование краткосрочных токенов доступа и токена обновления, использование токена обновления для обновления токена доступа, если вы хотите отозвать пользователя, отзыв токена обновления на стороне сервера, сброс токена обновления и токена доступа на стороне клиента. .

Другой способ - ссылочные токены. Основная идея заключается в том, что Сервер авторизации будет хранить содержимое токена в хранилище данных и будет выдавать только уникальный идентификатор для этого токена обратно клиенту. API, получающий эту ссылку, должен затем открыть связь по обратному каналу с сервером авторизации для проверки токена, чтобы сторона сервера могла контролировать, доступен ли эталонный токен (уникальный идентификатор). Сервер идентификации 4 также обеспечивает лексемы функции справки:

http://docs.identityserver.io/en/latest/topics/reference_tokens.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...