Как использовать OAuth Access Token, полученный с помощью Javascript, для аутентификации в PHP - PullRequest
0 голосов
/ 02 марта 2012

Я пишу расширение для Opera, и оно будет использовать Twitter OAuth API.Я знаю, что это осуждается, но я реализую OAuth Twitter с Javascript внутри расширения.Пожалуйста, потерпите меня, потому что я не профессионал в OAuth.

Но вот что я хочу сделать.После проверки подлинности пользователя в Twitter я сохраню токен доступа в localStorage с объектом widget.preferences , доступным для расширений Opera.Вот часть, в которой я не уверен прямо сейчас.В расширении можно будет оставить комментарий.Комментарий будет опубликован от расширения к скрипту на сервере, который обработает и вставит комментарий в таблицу в базе данных.

Что я хочу знать сейчас, так это то, как я могу быть уверен, что имя пользователя, отправившего комментарий, является реальным именем пользователя, который оставил комментарий и вошел в систему с помощью Twitter в моем расширении?

Если бы я только что отправил имя пользователя из расширения, было бы очень легко просто манипулировать именем пользователя в запросе, в результате чего поддельное имя пользователя было бы вставлено в базу данных с комментарием.

Я мог бы отправить токен доступа пользователя, отправляющего комментарий с расширения, сервер получал бы его с данными комментария.Прежде чем вставить комментарий в базу данных, могу ли я использовать токен доступа, отправленный из расширения Javascript, чтобы получить с помощью PHP имя пользователя в Twitter, представленное этим токеном доступа?Или токен доступа создается случайным образом каждый раз, когда пользователь проходит проверку подлинности, поэтому его нельзя использовать следующим образом?

1 Ответ

0 голосов
/ 03 марта 2012

OAuth Echo - это стандартный способ проверки подлинности Twitter через API.

Основной поток будет:

  1. Расширение подписывает запрос account / verify_credentials, но не отправляет его в Twitter.
  2. Расширение отправляет подписанный запрос на сервер.
  3. Сервер отправляет запрос в Twitter. Если это удается и возвращает screen_name, вы знаете, кто это.
...