Лучший способ защитить веб-сайт с интерфейсом javascript / серверной частью REST?

Я хотел бы создать следующий проект:

  • серверная часть общедоступного REST API, к которой может получить доступ любой аутентифицированный клиент.
  • внешний интерфейс со статическими файлами в HTML / CSS / Javascript с помощью Backbone.js jQuery вызывает Серверная часть REST

Фактически, в моей архитектуре есть три стороны: передняя часть, которая является клиентом серверной части, серверная часть и пользователь, который хочет пройти аутентификацию на странице входа в систему переднего плана.

Каков наилучший способ защитить три стороны, участвующие в этой архитектуре?

На самом деле, я считаю, что просто невозможно создать безопасное приложение во внешнем интерфейсе, если я все делаю на javascript, поэтому я намерен делегировать аутентификацию / авторизацию на уровень прокси на моем сервере. Что вы об этом думаете?

Я намерен использовать OAuth для защиты моей серверной части REST, но я не уверен, нужно ли мне использовать двухстороннюю или трехстороннюю реализацию. Каков правильный подход в этом случае?

ОБНОВЛЕНИЕ : при более глубоком поиске на веб-сайте SO я нашел эту ветку , что именно то, что я хотел бы сделать, за исключением того, что я хочу используйте Java на стороне сервера, а не DotNet. Если я хорошо понимаю, на самом деле мой веб-сайт похож на любой клиент моего REST API, за исключением того, что он единственный, который имеет право создавать новые учетные записи пользователей. Потому что, если мой REST API доступен только через OAuth (например, в Twitter), кто может выполнить создание учетной записи раньше? Я прав?

16
задан Community 23 May 2017 в 12:01
поделиться