2014-02-05 7 views
0

В настоящее время я пытаюсь обернуть голову вокруг довольно сложного варианта использования OAuth2. У меня есть два сервера, один - веб-сервер на стороне клиента, который обслуживает веб-сайт, а другой - сервер API, который используется для взаимодействия со всеми нашими базовыми данными.Обмен токенами OAuth2 между провайдерами

пользователей В настоящее время используют базовый UserCredentials поток, который создает маркер доступа на наш API-сервер, который затем используется для подписи всех запросов от веб-сервера к API

Есть ли способ, что я могу позволить пользователям войти используя Google или Facebook, и либо использовать токен доступа, сгенерированный для подписывания запросов API, так и выше, или, альтернативно, создать токен доступа в нашем API, который затем используется так же, как указано выше?

ответ

0

Одним словом: НЕТ.

Позвольте мне объяснить, почему. Давайте начнем с просмотра Google, чтобы получить доступ к Google, вам необходимо зарегистрировать свое приложение в консоли Google Apis. Когда вы попросите пользователя предоставить вам доступ к данным Google, вы делаете это, используя идентификатор клиента и секрет, который вы получили из консоли apis. Затем google идет о создании your application токена доступа для there api Эта информация хранится на серверах. Когда вы затем пытаетесь использовать этот токен доступа, они знают, какой пользователь дал вам доступ к этим данным через api.

Теперь то же самое относится и к Facebook, и к вашему сервису. Все они разные API-интерфейсы, предлагаемые разными компаниями. Они создают токены доступа. Google не может создать токен доступа для доступа к данным в Facebook, а затем Facebook может обратиться в Google. Вещи просто не работают таким образом.

+0

Спасибо за ответ. Мне не нужно получать данные от этих поставщиков, мне просто нужно использовать их для аутентификации пользователя. Думаю, мне все равно понадобится какой-то способ сопоставить пользователя Google для пользователя на моем API:? – chillievodka

+0

Вы просто хотите, чтобы пользователи регистрировались на вашем сайте, используя «Google» или «facebook accounts»? – DaImTo

+0

Это больше похоже на то, что мне нужно, чтобы пользователи могли войти в API с помощью Facebook/Google. – chillievodka

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

  • Нет связанных вопросов^_^