Мы создаем программное обеспечение B2B, которое содержит веб-интерфейсы, которые будут часто использоваться разными пользователями в одном и том же экземпляре браузера, а также в одном windows -user-session.
Пользователи должны «выйти» из нашего веб-интерфейса, используя нашу функцию выхода. Это гарантирует, что токены доступа удалены из хранилища браузера, чтобы веб-сайт больше не мог аутентифицироваться с помощью нашего поставщика удостоверений, который основан на IdentityServer4.
Недавно мы попросили инженера по безопасности проверять различные уязвимости этого.
Он сказал нам, что, поскольку мы используем Hybrid-Flow или Implicit-Flow с IdentityServer4, мы получили уязвимость, связанную с захватом сеанса, поскольку эти потоки передают полученный токен доступа логина, используя URL-адрес обратного вызова, в сайт, на котором пользователь входит в систему.
У нас есть эта уязвимость в нашем конкретном c сценарии использования, потому что мы можем удалять токены доступа в хранилище браузера для наших веб-сайтов, но эти токены будут по-прежнему хранятся в истории браузера, потому что вызываемые URL-адреса будут храниться там. И наши пользователи определенно будут использовать тот же экземпляр браузера и, следовательно, тот же windows -user-session, как упоминалось ранее.
Наши веб-сайты выходят из системы logi c не могут получить доступ к истории браузеров, поскольку она является отдельной по соображениям безопасности, конечно.
Я хотел бы знать: этот сценарий (несколько пользователей используют одну windows -сессию) полностью не поддерживается IdentityServer4 в первую очередь, или есть способ не передавать Токен доступа с использованием URL-адреса обратного вызова, но вместо этого другим способом, который не приведет к сохранению токена доступа в истории браузера?