Правильный метод доступа к токенам OAuth2 через javascript

#javascript #oauth-2.0

#javascript #oauth-2.0

Вопрос:

Я понимаю основы oauth, и я использовал его в приложении раньше, но никогда так.

У меня есть API на основе oauth2, который я написал, и я пишу приложение на javascript (в backbone.js ), и я хочу получить доступ к API с его помощью.

Моя проблема в том, что мне нужно получить токен доступа для приложения js. Обычно я бы запросил токен с чем-то вроде example.com/oauth2/token?client_id=<client-id>amp;client_secret=<client-secret>amp;....

Если предполагается, что мой клиентский секрет должен быть, ну, секретным, должен ли я помещать его в свое приложение js?

Как правильно использовать oauth2 через javascript?

Мои пользователи / приложение также являются «источником» для oauth, поэтому я не собираюсь выполнять какую-либо стороннюю аутентификацию пользователя, поскольку они уже будут зарегистрированы на сайте.

Ответ №1:

Я думаю, вам следует получить токен доступа с сервера. Таким образом, секрет вашего клиента хранится в секрете на сервере. Другими словами, ваш сервер будет служить прокси для обмена OAuth.

Комментарии:

1. Это то, о чем я изначально думал. У меня есть общая конечная точка на сервере, которую я могу запросить, и выдать новый токен доступа. Прямо сейчас сервер является пользователем, но это может измениться.

2. вот как приложения facebook обрабатывают это на стороне javascript: developers.facebook.com/docs/authentication поиск «Потока на стороне клиента»

3. В моем случае нет диалогового окна входа пользователя. Мое приложение является клиентом пользователя.