Я пытаюсь понять OAuth 2.0 ( ПОТОК СЕРВЕРА ).Давайте рассмотрим простой пример API контактов Google.
В соответствии со спецификациями, я зарегистрировал свое приложение в Google и получил идентификатор клиента и секрет клиента. Также я упомянул URL обратного вызова.
Получение доступатокен требует от меня
Перенаправить пользователя на определенный URL-адрес с необходимыми строками и заголовками запросов, как указано в документе OAuth на сайте Google (https://accounts.google.com/o/oauth2/auth бла-бла)
После того, как пользователь вводит свои учетные данные, они отправляются обратно на URL обратного вызова, как указано в моем приложении, которое я уже зарегистрировал в Google.здесь параметр строки запроса & code = 4 / P7q7W91a-oMsCeLvIaQm6bTrgtp6 bla bla также добавляется для обратного вызова URL.Таким образом, теперь у меня есть код авторизации
Теперь я отправляю запрос на https://accounts.google.com/o/oauth2/token с кодом авторизации, который я получил на предыдущем шаге, чтобы я получил токен доступа и обновил токен.
Как только я получу этот «токен доступа», я смогу получить доступ (например, связаться с API и получить контакты пользователя)
До этого момента все было в порядке.Я также понимаю, что токены доступа имеют ограниченный срок службы, и мы можем получить новый токен доступа, используя «токен обновления».
A. Как разработчик, я обязан хранить и проверять, действителен ли «токен доступа»?
B.Если мой веб-сайт является общедоступным веб-сайтом с учетной записью «Войти с помощью Google / FB / twitter», как я узнаю, что это тот же пользователь, который вернулся на сайт через 2 дня, и мне не нужно, чтобы он запрашивал логин, вместо этого пользователь долженбыть авторизованным на сайте?потому что я не хочу, чтобы он прошел процесс авторизации, так как они уже дали разрешение на мое приложение.
EG: я зашел на сайт TechCrunch, используя свой логин FB, и могу комментировать статьи.Теперь даже после 1 недели, если я посещаю TechCrunch, мне не нужно входить снова.откуда они знают, что это я, а я уже аутентифицирован?