OAuth не удалось? - PullRequest
       48

OAuth не удалось?

4 голосов
/ 20 января 2010

Я думаю использовать OAuth для единого входа (SSO) с сервисами RESTful. На первый взгляд использование OAuth в качестве стандарта де-факто выглядело естественно для меня. Но я должен признаться, что я не понимаю, как использовать его для единого входа. Во время изучения OAuth я обнаружил все больше критики авторизации - настолько, что склоняюсь к мысли, что OAuth потерпел неудачу.

OAuth сложно реализовать.

Юзабилити плохая.

Почему Facebook не реализует OAuth сегодня:

  • «OAuth более сложный и менее производительный, чем наш собственный механизм аутентификации»
  • «Похоже, OAuth WRAP решит большинство или все эти проблемы»
  • Плохая производительность из-за двух многочисленных запросов и длинных URI
  • "Качество библиотеки в целом довольно плохое"

Возможно, WRAP от Microsoft, Yahoo и Google заменит OAuth.

Что происходит с OAuth (и WRAP)?

Так не сработал ли OAuth? Каковы альтернативы SSO - предпочтительно те, которые имеют широкое признание или перспективу для широкого использования? Вы бы предпочли WRAP ?

1 Ответ

8 голосов
/ 22 января 2010

OAuth не является решением единого входа, это протокол, который обычно используется для делегированной авторизации API. 3 legged OAuth позволяет клиенту, запрашивающему доступ к защищенному ресурсу, делегировать авторизацию серверу, на котором размещен этот ресурс. По сути, пользователь не обязан передавать свои учетные данные третьему лицу (клиенту), а только серверу, на котором размещен защищенный ресурс. OpenID может быть более подходящим решением, если вы хотите внедрить единый вход. Вы также можете использовать расширение OpenID OAuth, которое позволит вам совмещать аутентификацию с авторизацией через OAuth.

В настоящее время ведется работа над OAuth 2.0. WRAP был разработан как решение с ограничением по времени для решения некоторых случаев использования, не охваченных оригинальной спецификацией OAuth 1.0a. WRAP не заменит OAuth, скорее идеи WRAP будут внедрены в OAuth 2.0, где это уместно. Ряд оригинальных авторов OAuth, а также один из авторов WRAP написали об этом здесь:

Что происходит с OAuth?

Так что нет, OAuth не потерпел неудачу, на самом деле он получил довольно широкое распространение. OAuth 1.0 будет по-прежнему внедряться большим количеством поставщиков, и в конечном итоге OAuth 2.0 также будет доступен. WRAP предназначен для людей, которые хотят воспользоваться преимуществами сценариев, которые он рассматривает сейчас.

Что касается сложности реализации OAuth в качестве клиента, почему бы не попробовать его? Доступные библиотеки различного качества, но с приличной библиотекой вы обычно можете внедрить клиент OAuth менее чем за день.

...