Я создал ReactJS Frontend с GoLang Backend. Все данные запрашиваются / отправляются ReactJS из / в Golang Backend с использованием Rest API.
Я совершенно не понимаю, как лучше всего защитить мои запросы API, чтобы они не попадали на мой внутренний сервер программно и не вносили нежелательные изменения. Любой совет будет очень признателен.
Я изучаю токены JWT и CSRF, но не собираюсь никуда говорить о том, как именно реализовать это в моем приложении из-за отсутствия у меня опыта в области безопасности API.
Некоторые дополнительные сведения о моем приложении:
Пожалуйста, предложите мне, как лучше всего защитить мои остальные API с учетом структуры моего приложения.
P.S .: Для этой страницы нет входа в систему или какого-либо другого механизма, который бы установил подлинность пользователя.



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


Я бы предложил использовать JWT для безопасности API, поскольку срок действия вашего токена достаточно короткий.
Обычно токены генерируются поверх некоторого базового уровня аутентификации (имя пользователя, пароль). Должен быть какой-то уровень, который разделяет аутентичных и злонамеренных пользователей, тогда может быть реализована только аутентификация на основе токенов.
Ваш случай немного открыт, у вас могут быть токены с более коротким сроком действия и ограничение скорости в API. Это послужит вашей цели.
По сути, это вариант использования для веб-проверки, когда пользователю не обязательно входить в систему, чтобы продолжить транзакцию. Но все же, поскольку API-интерфейсы используются для очень важных целей, токен или ключи необходимы для обеспечения подлинности запросов. Реализация Cors - это способ, но любой может легко подделать их. Вот почему я изо всех сил пытаюсь найти лучший способ защитить эти API. Ограничитель скорости API уже включен на стороне сервера. Но я хочу реализовать начальный уровень безопасности с некоторой защитой ключей api.
В этом есть смысл, Кунал. Но вот кое-что, к чему я отношусь скептически: нет входа в систему, поэтому человеку не нужно вводить какие-либо уникальные учетные данные, которые могут установить их подлинность. В таком случае, если токен просто сгенерирован путем вызова API, не может ли один и тот же API использоваться злоумышленником для создания нескольких токенов, а затем вызывать неограниченное количество других API с этими сгенерированными токенами?