Аутентифицированный доступ к WebAPI через токен Facebook из приложения Android
Я пытаюсь настроить приложение Android для входа в мои службы WebAPI. Я хочу поделиться своими идеями, чтобы проверить их.
Если доступ к WebAPI осуществляется через WebSite, выполните следующие действия:
1- Вызовите метод WebAPI для входа
2- WebAPI перенаправить клиента на Facebook
3- Facebook войти и вернуть токен
4- Если я использую этот токен в следующих вызовах, я буду аутентифицирован как правильный пользователь.
И это работает.
Если доступ к WebAPI осуществляется через Android APP, как я могу получить токен доступа? На самом деле я делаю что-то вроде:
1- Связаться с Facebook через кнопку входа
2- Получение зарегистрированного идентификатора на Facebook, получающего токен
3- Попытка выполнить вызовы WebAPI, добавив Аутентификацию: КОД Носителя к моим вызовам
В этот момент я брожу ..
Как моё приложение теперь, когда я ТАК конкретный пользователь? Если я выполню что-то вроде
GET /API/METHOD1
Authentication: Bearer CODE
Как он может знать, что CODE это я, если приложение Android никогда не сообщало ему? Приложение автоматически связывается с Facebook, чтобы получить ответ типа «да! Я выпускаю этот токен, он связан с ...»
Или я все неправильно понимаю?
Другой способ понять это - использовать гибридный подход, такой как:
1- Позвонить в WebAPI (как через браузер). 2- Получить ссылку для перенаправления на Facebook. 3- Получить токен.
Но .. На этом этапе, как я могу снова переключиться между Facebook App / Facebook Site и моим Android-приложением?
Извините за беспорядок, я пытаюсь выяснить логику этого процесса аутентификации.