Подтвердить что ты не робот

Использовать авторизацию клиента facebook iOS на своем сервере

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

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

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

4b9b3361

Ответ 1

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

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

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

Итак, поток выглядит так:

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