1

У меня возникло несколько проблем, пытаясь решить, что будет лучшим решением для чего-то, что я пытаюсь построить.Как проверить связь сервера с сервером

В простейшей форме приложения у меня есть интерфейс, который позволяет пользователям загружать файлы, которые становятся связанными с их учетной записью, например, видео или изображением. Форма загружаемого файла отправляет запрос на загрузку на внешний сервер, который затем использует обратный прокси для передачи запроса непосредственно на API сервера хранения().

В настоящее время я застрял, пытается выяснить, какой лучший способ проверить, что запрос, полученный на API серверов хранения, фактически отправляется из обратного прокси-сервера с внешнего сервера, в отличие от кто-то просто отправляет прямой почтовый запрос на конечную точку API сервера хранения.

Любые предложения были бы очень оценены!

+0

Вы можете отправить какой-то токен с сервера Frontend для проверки подлинности запроса с правильного сервера. –

+0

Эй, @DhanushGopinath, спасибо за ваш ответ. Я уже создал сеанс, который создает токен CSRF, который проверяется на стороне сервера хранения на сеансе одного и того же клиента, но было бы лучше, например, создать маркер и отправить его по tcp, прежде чем я пройду по фактическому запрос, подождите ACK, содержащий правильный токен с сервера хранения, и только тогда, если это правильно, прокси-сервер запросит загрузку файла? –

+0

Я делаю это первым способом, который вы упомянули. И я написал обработчик HTTP для его аутентификации, и только если он действителен, я передаю запрос фактическому обработчику. Второй метод также должен быть прекрасным, за исключением того факта, что каждый вызов должен будет отправлять по 2 запроса каждый раз. –

ответ

0

Есть несколько способов сделать это:

  1. вы можете использовать API шлюза (например, APIGEE, AWS AI шлюза и т.д.). Шлюз может выполнить проверку подлинности начала запроса.
  2. Вы можете позволить переднему концу приложения, чтобы использовать OAuth (для сервера хранения) и использовать , что, чтобы получить аутентификацию/уполномоченные на сервере хранения
  3. Вы можете сделать IP-белые списки между серверами & позволяют ограниченный набор IP-адресов в источнике
  4. Вы можете использовать MASSL (Mutual Authenthicated SSL)/б серверов, чтобы убедиться, что только те клиенты, которые проверены получить доступ к своему API (может быть не для вашей проблемы непосредственно, но может быть использован с комбинацией)

это простой если вам не нужно сложное или более дорогостоящее решение.

+0

Hey @Virgo, спасибо за комментарий! Я уже реализовал CSRF-предупреждение по сравнению с сеансами, так как серверу хранилища отправляются его данные через форму, но я уже подумал о том, чтобы использовать предыдущий белый IP-адрес, чтобы я мог отдать это! Отличные предложения, очень ценится! –

Смежные вопросы