Мы создаем API, который будет использоваться другим приложением для чтения / записи данных из нашего приложения.
Например: www.example.com/getPayments/useid
Требование: вышеупомянутый API должен быть доступен только через VPN, чтобы кто-то не мог вызвать его из Интернета.
Итак, как я могу сделать некоторые маршруты в нашем приложении доступными только через VPN в Laravel.
Написание промежуточного программного обеспечения для ограничения доступа к определенным маршрутам на основе IP-адреса вашего посетителя должно работать для вас, если IP-адрес VPN включен в заголовки HTTP запроса или доступен для PHP через другой $_SERVER
переменная. Вам нужно будет проверить заголовки отправляемого HTTP-запроса, чтобы найти тот, который содержит IP-адрес вашей VPN, а затем использовать его в промежуточном программном обеспечении.
Вы можете либо написать облегченный компонент промежуточного программного обеспечения для этого, либо использовать существующий пакет, чтобы внести в белый список только IP-адрес VPN для маршрутов, которые вы хотите защитить.
Брандмауэр является существующим поставщиком услуг Laravel, который может помочь вам в этом.
Других решений пока нет …