Проверка / подписание, что запрос к моему API пришел из моего приложения и не был подделан (React Native) - PullRequest
0 голосов
/ 04 ноября 2019

Можно ли проверить, что API-вызов к моему серверу поступил из моего приложения и не был подделан другим клиентом HTTP-запроса или аналогичным? Я использую React Native с Node на серверной стороне и использую систему JWT для аутентификации.

Контекст: некоторые функции разблокированы только для пользователей, которые обнаружили приложение в определенном месте. Единственная система, которую я могу придумать, чтобы разблокировать их, довольно слабая - клиентский интерфейс отправляет запрос на сервер с указанием местоположения пользователя, и, если местоположение подходит, то функции разблокируются. Очевидно, что этот запрос может быть легко подделан, если только я не могу подписать их определенным образом, который является уникальным для приложения и который трудно перестроить.

Будут признательны любые другие подходы (например, определение местоположения пользователя изIP-адрес, с которого был отправлен запрос?)

1 Ответ

0 голосов
/ 04 ноября 2019

Помимо местоположения, вы можете добавить ключ в API доступа к серверу, как (sentFrom: app). ИЛИ вы можете использовать сертификаты подписи вашей организации.

...