2014-09-24 3 views
1

Я создаю бэкэнд REST для личного использования нашего интерфейса, они оба будут на одном сервере. Проблема в том, что я беспокоюсь о проблемах безопасности, я не хочу, чтобы злоумышленник использовал API напрямую, либо с помощью JS, либо с помощью другого клиента REST.Отключить прямые запросы к API REST

Давайте эту услугу в качестве примера

http://myserver:8080/something/webresources/film 

Это услуга, которая позволяет GET, PUT, POST, DELETE Я хочу, чтобы только интерфейс будет иметь возможность использовать его, в противном случае, так как каждый может увидеть client- кода было бы легко получить конечную точку и начать вводить или получать данные. У меня есть BASIC AUTH, поэтому они должны зарегистрироваться, и если они что-то сделают неправильно, я смогу узнать, кто это сделал, но это не решает проблему.

Я мог бы реализовать контроль доступа, чтобы пользователь мог получать/обновлять/удалять свои собственные фильмы, но я должен был бы сделать это для каждой службы REST (у меня уже более 100), плюс мне может понадобиться на самом деле получить другие фильмы

Это мой первый публичный проект, я действительно потерян.

ответ

0

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

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