OAuth без браузера и модель SSL / запрос-ответ - PullRequest
2 голосов
/ 15 сентября 2011

У нас есть план разработки мобильного приложения с использованием REST-ful. Мы хотим применить OAuth 1.0a, а не OAuth 2.0, потому что мы не используем SSL. Мы также не хотим использовать веб-браузер (мы думаем, что UX на основе ПИН не является дружественным). Мы знаем, что это невозможно при нормальном потоке OAuth.

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

Если нашему приложению не нужно защищать имя пользователя и пользователи доверяют нам ввод пароля в нашем приложении, может ли этот метод использоваться для обмена токеном доступа? Есть ли недостаток?

  1. После того, как ответ сервера не авторизован, токен клиента начинает поток запрос-ответ.
  2. Клиент отправляет запрос на http://www.example.com/login, с таким параметром, как OAuth require: oauth_consumer_key, oauth_token, oauth_signature_method, oauth_timestamp, oauth_nonce и дополнительный username параметр username = "username", the пароль параметр, рассчитанный из пароля пользователя (который хранится на сервере), oauth_nonce с ключом KDF, производная функция / хэш-функция. Клиент вычисляет подпись запроса с описанием OAuth, но отправляет запрос с именем пользователя и другими обязательными параметрами после того, как пропущен параметр пароля .

  3. Сервер проверяет запрос и возвращает токен доступа.

1 Ответ

1 голос
/ 03 ноября 2011

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

Я бы прочитал их документацию по xAuth, чтобы увидеть проверенный и протестированный метод и рассмотреть возможность использования SSL для шага запроса токена.

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