В чем разница между BasicAuth, OAuth и XAuth? - PullRequest
15 голосов
/ 24 июля 2010

Недавно я услышал, что Twitter отключит базовую аутентификацию в API Twitter, и они перейдут к OAuth.

Итак, я хочу знать, в чем разница между BasicAuth, OAuth и XAuth?

В чем преимущество и недостаток каждого Аутх?

Ответы [ 2 ]

17 голосов
/ 30 июля 2010

xAuth - это упрощенная версия OAuth. Он удаляет несколько шагов, поэтому ваше приложение отправляет подписанный OAuth-запрос POST с именем пользователя и паролем на серверы Twitter (используя https://api.twitter.com/oauth/access_token),, который напрямую возвращает токен потребителя и секретный ключ для использования другими запросами.

Вы должны отправить команду Twitter API по электронной почте, чтобы включить xAuth для вашего приложения, после того как ваше приложение получит доступ OAuth. См http://dev.twitter.com/pages/xauth.

14 голосов
/ 24 июля 2010

Twitter BasicAuth требовал от разработчика приложения сохранять имя пользователя и пароль пользователя и передавать их вместе с каждым запросом.

OAuth - это открытый стандарт, в котором пользователь перенаправляется в Twitter, вводит там свое имя пользователя / пароль (или уже вошел в систему), а затем разрешает приложению использовать его учетную запись. Приложение никогда не видит имя пользователя / пароль.

Процитировать твиттер-страницы:

Базовая аутентификация является ответственностью. Храня логины и пароли, разработчик берет на себя дополнительные ответственность за безопасность хранение этих полномочий; потенциальный вред для пользователей при входе в систему утечка или злоупотребление учетными данными очень высоко. Потому что многие пользователи используют один и тот же пароль на многих сайтах, потенциал для повреждения не обязательно перестань со своим твиттером счет.

См .: http://dev.twitter.com/pages/basic_to_oauth

Примечание: я ничего не знаю о xauth, поэтому оставлю это на усмотрение других.

...