У меня есть пользовательский интерфейс, который имеет BFF.Он генерирует самозаверяющий токен SAML для каждого вошедшего в систему пользователя.Этот BFF имеет специальный микросервис безопасности (только для себя).Всякий раз, когда BFF должен вызывать бизнес-API, он должен пройти через микросервис безопасности.Вот мой пример использования:
1) Пользователь входит в пользовательский интерфейс 2) BFF создает сеанс и генерирует самоподписанный токен SAML 3) BFF теперь должен вызывать бизнес-API 4) BFF передает SAML своему микросервису безопасности 5) Микросервис безопасности отправляется на сервер Oauth и передает SAML. 6) Сервер Oauth имеет доверительные отношения с BFF и имеет ключ для проверки подписи SAML. 7) Затем Oauth открывает содержимое SAML и создает JWT с этими утверждениями. 8) Oauth отправляет JWT обратномикросервис безопасности.9) Микросервис безопасности вызывает вызов бизнес-API и передает ответ обратно в BFF. 10) BFF повторно использует SAML для каждого другого вызова API, когда пользователь вошел в систему. 11) Микросервис безопасности повторно использует соответствующий JWT из SAML, переданного ему для выполнения запросов API.;Микросервис безопасности не проверяет SAML (у него нет ключа, и мы не хотим, чтобы производительность снижалась при проверке токена SAML с сервером Oauth для каждого запроса) 12) Когда пользователь выходит из системы, только BFF знает, что сеанс пользователя завершен.
Как лучше всего аннулировать токен JWT в микросервисе безопасности?