symfony — вход пользователя в систему после создания с Auth0 и переполнением стека

Я использую Auth0 для аутентификации с Symfony2 и HWIOAuthBundle.

Наше приложение делает следующее:

  1. Отправить ссылку для приглашения новому пользователю
  2. Пользователь щелкает ссылку и выдает форму, где он заполняет новый адрес электронной почты и пароль
  3. Как только форма отправлена ​​и проверена, мы создаем этого пользователя в Auth0 со всеми необходимыми метаданными
  4. Пользователь перенаправлен на начало тура

Проблема в # 4. Как мне получить, чтобы пользователи вошли в приложение Symfony сейчас? С Auth0 я могу позвонить https://muapp.auth0.com/oauth/ro Конечная точка API, и она будет возвращать access_token и id_token, но как мне использовать их для запуска, например, потока OAuth, чтобы я мог надлежащим образом аутентифицировать этого пользователя с помощью Auth0 и моего приложения.

1

Решение

В запросе URL перенаправления oauth-сервер должен добавить AUTHORIZATION_CODE,

https://your-oauth-client/callback?code=AUTHORIZATION_CODE

Этот код авторизации является доказательством того, что ваше клиентское приложение может действовать от имени пользователя. С этим кодом ваше клиентское приложение должно иметь возможность запрашивать ACCESS_TOKEN, его истечение, и REFRESH TOKEN (используя cURL или что-то подобное) с сервера.

Этот запрос должен выглядеть примерно так:

https://your-oauth-server/oauth/token?client_id=CLIENT_ID&client_secret=CLIENT_SECRET&grant_type=authorization_code&code=AUTHORIZATION_CODE&redirect_uri=CALLBACK_URL

Теперь клиентское приложение хранит ACCESS_TOKEN и добавляет его к заголовкам запросов следующих запросов.

Authorization:Bearer ACCESS_TOKEN

Если ACCESS_TOKEN истекло, клиентское приложение должно запросить новое с REFRESH_TOKEN,

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector