0Auth2.0 - Как сохранить токены доступа на основе пользователей (многопользовательская система) при получении по URL обратного вызова - PullRequest
0 голосов
/ 17 октября 2018

Этот вопрос беспокоит меня в течение многих дней о том, как мы можем сохранить токен доступа с сервера авторизации для соответствующего пользователя, когда мы получаем токен доступа на URL-адрес обратного вызова.

Рассмотрим приложение XYZ, котороеиспользуется несколькими пользователями, которые поддерживают oAuth-вход через Facebook.

  • Основные действия:
    1. Приложение XYZ зарегистрировано в Facebook и имеет собственный идентификатор клиента, секрет клиентаи URL обратного вызова зарегистрирован.
    2. Приложение XYZ предоставляет URL обратного вызова, который может принимать запросы GET (для кода авторизации) и POST (для токена доступа).
  • oAuth2.0Поток кода авторизации:
    1. Приложение XYZ запрашивает у сервера Facebook авторизацию с идентификатором клиента, response_type = code, grant, state, URL обратного вызова.
    2. Facebook запросит у пользователя разрешение на доступ.
    3. Как только Пользователь подтверждает разрешение, Facebook отправляет код авторизации в приложение XYZ.
    4. Затем приложение XYZ использует код авторизации из Facebook, а также секрет клиента, URL-адрес обратного вызова и дополнительные параметры, которые оно запрашивает для токена доступа.
    5. Теперь Facebook отправляет токен доступа в приложение XYZ.

Мой вопрос:

  1. Как мы узнаем, какой код авторизации связан с каким пользователем, когдаFacebook отправляет код авторизации на URL обратного вызова.

  2. И как только мы получим токен доступа для URL-адреса обратного вызова, как мы можем сохранять те же данные пользователя в базе данных.

Поскольку существует только один URL-адрес обратного вызова, который принимает все запросы от Facebook, как мы узнаем, какой запрос для какого пользователя?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...