Что следовать OpenID против Oauth (v1 и v2)? - PullRequest
4 голосов
/ 09 сентября 2011

Я заметил, что все крупные сайты используют Openid вместо Oauth.

У меня есть реализация oauth для Google и Facebook.

Мое требование:

  • Аутентификация пользователей с помощью Google / Facebook
  • Управление простыми профилями пользователей для пользователей на моем веб-сайте, предварительно заполненными из Google / Facebook.

Что я должен пойти на Oauth или Openid?

Когда следовать oauth?

1 Ответ

7 голосов
/ 09 сентября 2011

Они используются для разных целей.

OpenID используется для аутентификации SomeUser на вашем сайте, запрашивая у другого сайта подтверждение личности пользователя.

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

Еще несколько комментариев для запроса автора:

Вы не можете выбрать «OAuth для аутентификации пользователей», поскольку OAuth не является пользователемпротокол аутентификации (несмотря на название «auth»).

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

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

...