OAuthServer и сторонний поставщик OAuth

В настоящее время я меняю свое обычное веб-приложение Symfony2 на интерфейс Ember.js с REST Api на базе S2 Backend.

В моем старом решении у меня был FOSUserbundle для обычной регистрации/входа и т. д. и HWIOAuthBundle для входа в Facebook. Теперь я пытаюсь перенести эти функции в свой Rest API. Чтобы запустить обычную аутентификацию, я реализовал FOSOAuthServerbundle. И мой Ember.js потребляет его через Ember-simple-auth. Но это работает только для обычного входа в систему.

Я понятия не имею, как заставить работать вход в Facebook в этой настройке. Так как Facebook работает с OAUth, и мой бэкэнд работает с ним. Мой интерфейс напрямую запрашивает у facebook токен? Как мой бэкэнд получит уведомление? Или запросы проходят через мой сервер, и я обслуживаю токен facebook? Или мой сервер запрашивает токен facebook, а затем возвращает мой собственный токен Oauth из FOSOAuthServerBundle?

Есть много вопросительных знаков, и я действительно не нашел хорошего ответа в Интернете. Кто-нибудь внедрил защищенный REST API с входом в facebook?


person m0c    schedule 02.03.2014    source источник


Ответы (1)


Вы видели примеры Facebook в репозитории Ember.SimpleAuth (https://github.com/simplabs/ember-simple-auth/blob/master/examples/7-external-oauth/index.html)? Основная концепция заключается в том, что приложение Ember.js открывает пользовательский интерфейс Facebook Auth, который затем перенаправляет на ваше приложение, которое (на стороне сервера) обрабатывает ответ Facebook и потенциально заменяет токен Facebook на пользовательский, который приложение Ember.js может использовать для аутентификации. против вашего сервера.

person marcoow    schedule 04.03.2014
comment
Спасибо, я не уверен, что это самое простое решение - перенаправить на серверную часть, а затем закрыть окно, но, похоже, оно работает. Я попытаюсь реализовать это с моим бэкэндом. - person m0c; 10.03.2014
comment
К сожалению, эта страница устарела. - person Luis Lopes; 13.11.2015