Я работаю над новым веб-сайтом и хотел получить совет/отзыв по OAuth vs OpenID vs стандартного сайта, принадлежащего имени пользователя и паролю.
OAuth?, OpenID? Ни? Какой из них должен поддерживать мой сайт?
Ответ 1
Вы можете прочитать эту статью от Malcom Tredinnick, которая объясняет, что такое openid и oauth. Они служат различным целям.
Таким образом, openid будет использоваться для уникальной идентификации пользователей - это решение для идентификации. oAuth предоставит средства для взаимодействия с данными, доступными для пользователей вашего сайта, позволяя пользователю предоставлять ваш временный доступ к внешним службам, например, их учетную запись flickr - это средство авторизации.
Предлагая только стандартную учетную запись на сайте, всегда есть опция, конечно, но IMHO, поддержка openid лучше для ваших пользователей и для Интернета. Многие сайты, реализующие openid, позволяют пользователям использовать openid, если они есть, но также позволяют пользователям входить в систему и создавать учетные записи без openid. Таким образом, это не обязательно одно или другое предложение. Вы можете сделать оба!
Ответ 2
Имейте в виду, что даже если вашему сайту не требуется доступ к личным данным ваших пользователей на других сайтах, OAuth может по-прежнему применяться, если у вас есть данные, которые пользователи могут получить через API или с другого веб-сайта, С помощью OAuth любой конец или оба могут применяться к вашему сайту.
Ответ 3
Мое впечатление от OAuth заключается в том, что это больше для обеспечения безопасного, аутентифицированного доступа к API, а не для общего доступа пользователей.
Лично мне хотелось бы, чтобы другие сайты поддерживали OpenID.
Ответ 4
Я выступаю за поддержку интеграции авторизации пользователей с использованием OpenID, Facebook и любых других аутентификаторов. Дайте пользователю выбор.
ТАКЖЕ дают им возможность не использовать их. В частности, на веб-сайтах, ориентированных на взрослых, ваши пользователи могут не пойти с тем, что не так анонимно, как простой знак на вашем сайте. Просто используйте лучшие практики, когда дело доходит до хранения паролей.
Ответ 5
Вы можете комбинировать все из них и извлечь максимум из этого, но это зависит от ваших вариантов дизайна.
Например, если вы используете Java, вы можете настроить Acegi (Spring Security), чтобы разрешить openID вместе с вашим обычным механизмом аутентификации.
openID имеет расширения OAuth
OAuth имеет расширения OpenID
Это вам...
Ответ 6
JanRain позволяет вам принимать только все. Учитывая, что крупные игроки всегда хотят быть поставщиками, а не потребителями, это может быть единственным реалистичным "универсальным" вариантом.
Ответ 7
Здесь - блестяще понятное объяснение. Исходя из документации OAuth.
Ответ 8
В ноябре 2011 года появился новый стандарт, называемый OpenID Connect. Он построен на OAuth 2.0 и, насколько это возможно, Я это понимаю, стандартизирует то, как Facebook делает вещи, которые также построены на OAuth 2.0. Это выглядит многообещающим, поскольку существует большой опыт работы с протоколом проверки подлинности Facebook, и это может быть решение, которое ищет множество веб-разработчиков. Я еще не погрузился в это, хотя я мог бы не понимать это, но так понимаю, прочитав этот пост в блоге об этом.