У меня есть некоторые конечные точки веб-API, к которым я хотел бы гарантировать доступ только нашим приложениям\коду.
Мы внедрили систему аутентификации на основе токенов. Проблема в том, что кто-то потенциально может проверить трафик с рабочего стола, вытащить токены и вызвать скрипт для наших конечных точек с помощью прослушиваемого токена.
По сути, я хочу гарантировать, что вызовы API исходят только из нашего клиентского кода. Я думал о потенциальном шифровании клиентской стороны токена, а затем расшифровке серверной части для проверки источника, но поскольку наш клиентский javascript-код может быть проверен, метод шифрования потенциально может быть воспроизведен.
Я уверен, что есть готовые решения... Я просто не знаю, с чего начать. Любые идеи?
См. также этот вопрос: security.stackexchange.com/questions/118096/…
А также: nccgroup.trust/us/about-us/newsroom-and-events/blog/2011/august/…
Кроме того, вы можете использовать веб-токен с датой истечения срока действия, чтобы свести к минимуму возможность использования другого инструмента для доступа к API, но это не исключает его.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


По сути, если у вас есть конечная точка API, считайте, что ее можно вызывать из чего угодно. Потому что это. Вы можете аутентифицировать пользователя, но затем этот пользователь аутентифицируется для доступа к вашему API с помощью любой утилиты (если вы используете javascript в качестве одного из клиентов). Так что лучшее решение - не позволять им делать что-то опасное. Дважды проверьте все на бэкэнде.