Защита службы REST на встроенном компьютере в частной сети - PullRequest
0 голосов
/ 16 мая 2019

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

Предположим, у меня есть две лампочки, подключенные к сети (лампочка A и лампочка B), каждая из которых управляется встроенным компьютером (например, Rasberry PI) под управлением Linux.Каждый контроллер предоставляет метод REST, доступный из локальной сети, для его включения и выключения и наоборот.

Две лампочки подключены к частной сети (например, 192.168.0.x).Также в этой же частной сети находится ПК с двумя сетевыми картами, на которых установлен веб-браузер: один сетевой адаптер подключен к частной сети, а другой - к общедоступному Интернету.ПК имеет доступ как к частной сети, так и к общедоступному Интернету, но не перенаправляет трафик с одного сетевого адаптера на другой сетевой, сохраняя частную сеть полностью изолированной от общественной сети.

В Интернете естьсервер аутентификации lightbulb.com, который отслеживает зарегистрированных пользователей, которым разрешено переключать одну (или, возможно, обе) лампочки.Боб и Алиса ранее регистрировались на lightbulb.com, и Бобу было дано разрешение на управление лампочкой B, а Алисе было дано разрешение на управление лампочкой A.

Когда Боб вошел в систему на lightbulb.com на ПК, Ajaxвызовы из веб-браузера на интерфейс REST на лампочке B должны реагировать на лампочку B (т.е. включать или выключать лампу).Однако при входе Боба на lightbulb.com вызовы Ajax из веб-браузера на интерфейс REST на лампочке A должны быть отклонены, поскольку lightbulb.com не дал Бобу разрешения управлять лампочкой A. Ситуация Алисы противоположна ситуации Боба..

Поскольку лампочки находятся в частной сети и не имеют доступа к Интернету, как они могут определить, следует ли действовать или отклонять запрос метода REST, учитывая (а) аутентификацию и авторизацию Боба/ Алиса делается на lightbulb.com, а не на ПК;и (b) лампочки не могут напрямую обращаться к lightbulb.com для проверки учетных данных.

Я думаю, что Oauth2 может здесь помочь?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...