Я относительно новичок в этой области защиты API. Большую часть моей карьеры я занимался разработкой внутренних продуктов для использования в организации или присоединением к продукту, в котором уже реализована защита (которая обычно не меняется)
Читая о JWT и Identity Server, я понял роль подписи и необходимость разделения авторизации и аутентификации. Но одна вещь кажется мне странной:
Если мой пользователь собирается получить подписанный токен и использовать его для аутентификации себя, и есть «Человек посередине», который прослушивает и копирует этот токен, может ли он выдать себя за моего пользователя? (Я верю, что ответ - да)
Поэтому мой лучший вариант здесь - использовать SSL при каждом вызове моего API. Маркер является временным, и все это не намного меньше угрозы безопасности.
Итак, мой вопрос здесь:
Если я в конечном итоге использую SSL для своих вызовов API, для чего нужна подпись? с SSL трафик все равно скрыт, и никто не может его подделать. Браузер может использовать имя пользователя и пароль в виде простого текста, и они не будут отображаться.
Что мне здесь не хватает?