Api доступен только с доверенных сайтов, не любой браузер, почтальон и т. Д. - PullRequest
0 голосов
/ 11 февраля 2020

Можно сделать API-ответ только на указанный c запрос?

Пример. У меня есть API на http://api.example.test

И я не хочу, чтобы кто-нибудь получил к нему доступ просто с помощью веб-браузера и введите этот URL, или с помощью почтальона для выполнения любого запроса POST, или любой другой вещи.

Я хочу, чтобы доступ к API был возможен только с помощью указанного c примера сайта http://example.test

Это будет работать так:

http://example.test походит на панель администратора, которая управляет всем остальным для этого API

http://api.example.test просто база данных API для хранения всей информации. Нет фронтэнда на этом сайте.

API использует Laravel, и CORS применяется для разрешения только для домена белого списка. Но это не мешает любому прямому запросу или почтальону и т. Д. c.

Если есть какой-либо источник, где я могу прочитать об этом, или любое объяснение. Я действительно ценю это

Спасибо

1 Ответ

0 голосов
/ 11 февраля 2020

Входящий трафик c заблокирован или разрешен конфигурацией сервера, а не из кодовой базы самого приложения (tl; dr, это не имеет ничего общего с Laravel). Конфигурируя виртуальные хосты на вашем Apache2, например, или изменяя группу безопасности вашего экземпляра EC2 (на AWS), вы можете специально заносить в белый список определенные IP-адреса от доступа к вашему местоположению.

Это то, что Apache Виртуальный хост выглядит следующим образом:

<VirtualHost *:80>
ServerName example.net
DocumentRoot /public

<Directory "/public">
    Order Deny,Allow
    Deny from all
    Allow from 10.10.10.10
    Allow from 10.10.11.0/24
</Directory>   

PS: Если вы думаете о создании API в Laravel, вы можете задать Lumen a пытаться. Это микрорамка от Laravel, созданная специально для этой цели.

...