использовать авторизацию на iOS-клиенте facebook на собственном сервере - PullRequest
17 голосов
/ 20 октября 2011

Я использую единый вход на Facebook в своем приложении для iOS, и это работает нормально.Теперь я хотел бы использовать эту информацию - пользователь проверен по Facebook с его uid - на моем сервере.Но как я могу - безопасно - передать эту информацию на сервер?

Я предполагаю, что мне нужно будет отправить uid и, возможно, authToken, который я получил с facebook на мой сервер?Может ли кто-нибудь изложить общий подход к этому?

Даже если это не имеет большого значения для моего вопроса, мой сервер работает на rails и разрабатывает для аутентификации.У меня также есть логин Facebook, работающий там отдельно, но я хочу использовать уже выполненную аутентификацию клиента на сервере.Смешение ...

1 Ответ

35 голосов
/ 28 октября 2011

Я наткнулся на этот пост, который помог мне понять проблему и решение.

Поправь меня, если увидишь какие-либо проблемы.

Идея состоит в том, чтобы передать токен аутентификации в приложение rails. Токен аутентификации работает только в том случае, если оба приложения используют один и тот же секрет приложения.

Итак, поток такой:

  1. Проверка подлинности iOS. Возьмите токен пользователя Facebook и отправьте в приложение rails.
  2. Приложение Rails получает токен авторизации, публикует его на graph.facebook.com/?auth_token=XXX. Ответ должен быть объектом json пользователя.
  3. Возьмите ответ объекта пользователя, чтобы найти UID и сопоставить его с пользователем в вашей базе данных. Если UID не существует, создайте нового пользователя и установите новый UID.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...