Исходя из моего опыта работы с OpenID, я вижу ряд существенных недостатков:
Добавляет Единственная точка отказа на сайт
Это не сбой, который сайт может исправить даже в случае обнаружения. Если провайдер OpenID не работает в течение трех дней, какие средства у сайта есть, чтобы позволить своим пользователям войти в систему и получить доступ к информации, которой они владеют?
Переносит пользователя на контент других сайтов и каждый раз, когда они входят на ваш сайт.
Даже если у поставщика OpenID нет ошибки, пользователь перенаправляется на свой сайт для входа в систему. На странице входа есть контент и ссылки. Так что есть шанс, что пользователя действительно уведет с сайта, чтобы он провалился в кроличью нору в Интернете.
Зачем мне отправлять пользователей на веб-сайт другой компании?
[Примечание: мой провайдер больше не делает этого и, похоже, решил эту проблему (на данный момент).]
Добавляет нетривиальное количество времени для регистрации
Чтобы зарегистрироваться на сайте, новый пользователь должен прочитать новый стандарт, выбрать поставщика и зарегистрироваться. Стандарты - это то, с чем должны согласиться технические специалисты, чтобы упростить работу пользователей. Их не следует навязывать пользователям.
Это мечта Фишера
OpenID невероятно небезопасен, и украсть ID человека при входе в систему тривиально просто. [взято из Отвечать Дэвида Арно ниже]
При всех недостатках есть один положительный момент, позволяющий пользователям иметь меньшее количество входов в систему в Интернете. Если у сайта есть выбор для OpenID, то пользователи, которым нужна эта функция, могут ее использовать.
Я хотел бы понять:
Какие преимущества дает сайт для создания OpenID обязательный?





Это хороший способ передать часть вашей инфраструктуры на аутсорсинг. Вам не нужно беспокоиться о потерянных паролях и т. д., Это сделает кто-то другой.
Хотя я не уверен, что буду использовать его исключительно. Я недостаточно использовал OpenID, чтобы полностью доверять ему, и процесс регистрации необходимо оптимизировать до тех пор, пока> 90% пользователей не получат OpenID.
Добавляет критическую точку отказа для сайта
Этой критической точкой отказа может быть отправленное вами электронное письмо с подтверждением, но почтовый ящик пользователя а) недоступен из-за опечатки, б) переполнен или в) провайдер не работает.
Переносит пользователя на контент других сайтов и каждый раз, когда они входят на ваш сайт.
Я это вижу, но ИМХО - это не так уж и плохо. Я имею в виду, Y! Кажется, это один из самых загроможденных логинов, и он никогда не работает для меня. ;) Кроме того, большинство провайдеров OpenID выглядят не так уж плохо (пока).
Также помните о своей аудитории. Если мама и папа - ваши пользователи, OpenID, вероятно, чертовски сбивает с толку. Но, наверное, так много в Интернете. В случае с SO, люди несколько сообразительны и знают, чего хотят.
Добавляет дополнительное время для регистрации
Это не проблема. Посмотрите список провайдеров: http://openid.net/get/
У многих людей есть хотя бы Yahoo! аккаунт, так что если это действительно сработало. Было бы не так уж плохо. Я согласен с тем, что если у пользователя нет OpenID, и он не знает, для чего он нужен. Воспитывать их не так-то просто.
И подумайте о подтексте: «чтобы зарегистрироваться на сайте A, вам необходимо зарегистрироваться на сайте B». И все мы знаем, что регистрация сама по себе - заноза в заднице. Но в конечном итоге это именно то, что OpenID пытается решить.
В настоящее время я не вижу смысла делать OpenID обязательным. Хотя мне это нравится как дополнение. Как люди предоставляют ссылки для «входа в систему с помощью Facebook» и т. д. Тогда людям, которые не понимают этого (или не заботятся), не нужно беспокоиться. Но другие все еще могут его использовать.
Это не проблема, если у вас есть OpenID. ;) И как я уже сказал, шансы не так уж и плохи. Помимо тех, что рекламируются по ссылке, которую я вам дал, их гораздо больше.
Проблемы с электронной почтой возникают только при однократной регистрации. У моего открытого идентификатора Technorati были проблемы 2-3 раза за последние несколько дней, и я не смог войти в Stack Overflow. Точка сбоя возникает каждый раз, когда вы входите в систему.
Я сам себе провайдер openid. Если есть проблема, я может ее исправить. Но даже тогда, если вы выберете надежного провайдера (точно так же, как выбор надежного веб-хостинга), у вас не должно возникнуть проблем. Однако до тех пор, пока оно не получит широкого признания, поставщики, которые делают это на стороне, не будут работать над надежностью.
Преимущество обязательного использования OpenID заключается в том, что не нужно писать код входа на веб-сайт (помимо интеграции с OpenID), и не нужно предпринимать никаких мер предосторожности при хранении паролей пользователей и т. д.
Отсутствие собственного кода входа в систему также означает отсутствие необходимости иметь дело с множеством проблем поддержки, таких как сброс утерянных паролей и т. д.
Конечно, большинство ваших недостатков действительны, так что я думаю, это станет компромиссом.
Что меня удивляет, так это то, что существует не больше сайтов, устанавливающих тесные отношения с конкретным провайдером OpenID на этапе регистрации учетной записи - то есть своего рода «Вы можете использовать любой OpenID, который вам нравится, но вы также можете создать его прямо сейчас, введя имя пользователя, пароль и т. д., страница входа в систему, которая автоматически создает для вас новую учетную запись у выбранного провайдера.
Это код, который большинство людей писали несколько раз, но я согласен, что это полезно.
Вопросы поддержки, связанные с OpenID, могут быть хуже, чем вопросы, связанные с именем пользователя и паролем. Не только потому, что большинство пользователей никогда не сталкивались с этим раньше, но и потому, что есть еще кое-что, что может пойти не так.
Помимо предоставления вам возможности зарегистрироваться у поставщика OpenID при регистрации учетной записи, я думаю, что это ускорило бы принятие, если бы сайты сами стали поставщиками OpenID. Итак, SO, например, может сказать: «Войдите в систему со своим OpenID или создайте учетную запись» (и ваша учетная запись станет OpenID, который впоследствии можно будет делегировать)
Я на 100% согласен со skiphoppy. Но ... тогда вы теряете то преимущество, что вам не нужно самостоятельно разбираться с именем пользователя и паролем.
Если вы сами не храните личные данные, такие как пароли, гораздо проще соблюдать правила конфиденциальности. Еще один момент.
skiphoppy, проблема в Интернете с OpenID IMO в том, что у нас слишком много провайдеров и недостаточно RP
Он побуждает пользователей зарегистрироваться в OpenID, узнать о нем больше и, надеюсь, проповедовать его сами.
Stack Overflow доказывает, что простая поддержка OpenID может работать.
"Adds critical point to failure to the site"
В случае, если провайдер OpenID не работает, на сайте должен быть механизм, позволяющий пользователям входить в систему и добавлять / изменять провайдеров OpenID. Возможно, сайт может отправить временную ссылку по электронной почте, чтобы обойти безопасность, чтобы пользователи могли получить доступ к своей учетной записи.
"Takes a user to another sites content and every time they logon to your site"
Мой провайдер OpenID позволяет мне доверять определенному веб-сайту, поэтому мне не нужно даже просматривать его веб-сайт.
"Adds a non-trial amount of time to the signup"
Чем больше сайтов поддерживает OpenID, тем меньше проблема.
«Он побуждает пользователей регистрироваться в OpenID ... ... и, надеюсь, сам проповедовать его». Я согласен с тем, что это способ продвинуть конкретную технологию (что интересно, учитывая, что цель StackOverflows - быть технологически независимой в содержании). Дело в том, что это не «поощряет», а заставляет.
Adds a critical point to failure to the site
Третий по величине идея по uservoice для Stackoverflow позволяет изменять поставщика OpenID. А в комментариях есть предложение разрешить связывать больше, чем на OpenID. На сайтах, где несколько OpenID могут быть связаны с учетной записью, если ваш обычный поставщик OpenID не работает, вы все равно можете войти в систему с другим поставщиком (при условии, что вы уже связали его с сайтом).
Кроме того, это только критическая точка отказа для пользователей провайдера OpenID, который не работает. Все остальные пользователи других поставщиков OpenID могут продолжать регистрировать его. Со временем можно было ожидать, что пользователи перейдут к самым надежным поставщикам.
Takes a user to another sites content and every time they logon to your site
Если вы настроили своего провайдера OpenID так, чтобы он всегда доверял сайту (или потребителю OpenID в номенклатуре), и вы уже вошли в систему своего провайдера OpenID, они перенаправят вас прямо на сайт, даже если вы даже не увидите свой сайт провайдера OpenID.
Adds a non-trial amount of time to the signup
В настоящее время это может быть правдой, но, как сказал Андюк, «это становится менее серьезной проблемой, чем больше сайтов поддерживают OpenID». Я ожидаю, что через несколько лет большинство пользователей уже будут иметь OpenID и знать, что это такое.
Я действительно не думаю, что это правда. Я знал об OpenID с момента его выпуска, и только несколько недель назад получил с ним учетную запись для доступа к этому сайту. Я больше нигде не буду использовать. И я довольно техничный тип; у них будет гораздо более трудный тип убедительных новичков.
«Я не буду использовать его где-либо еще» означает ли вы, что есть другие места, где вы могли бы его использовать, но вы этого не сделали, или что нет другого сайта, где вы бы его использовали. Я предполагаю, что это последнее. Когда вы используете 10 сайтов, которые принимают OpenID, будет разумнее иметь и использовать один.
@thesmallprint: я создал логин OpenID около года назад. Когда у вас есть один, вы удивитесь, сколько сайтов разрешает вход OpenID; Я думаю, что в большинстве случаев вы просто не замечаете этого, если у вас его нет.
У меня был мой довольно долгое время, и я никогда не использовал его, когда SO начал с него, я стал своим собственным провайдером, и со всеми сайтами, на которые я захожу, у меня уже есть нормальные учетные записи с ними, поэтому использование openID не работает для меня у меня есть 1 логин, так что это мой openID, и ничто другое не разделяет его.
Как веб-разработчик, я большой поклонник идеи OpenID. Написание кода Auth - заноза в заднице. Как веб-пользователь, я большой поклонник OpenID - для некритических целей, таких как SO, форумы и т. д. - потому что, если у вас есть идентификатор, это очень простой способ присоединиться к сайту.
Я думаю, что за некоторыми исключениями - например, сообществом разработчиков - в настоящее время нельзя принудительно использовать только OpenID. «Средний» веб-пользователь (что бы это ни значило) этого не понимает. Однако продвижение его на таком сайте повышает осведомленность разработчиков, и в конечном итоге идея улетучится. Поскольку OpenID появляется на все большем и большем количестве сайтов, люди заглянут в него, поймут, что он у них есть, а затем начнут его использовать. Чтобы OpenID - отличная идея - прижился, необходима критическая масса пользователей и сайтов, поддерживающих его.
В конце концов, все будет просто так, как есть, и мы зададимся вопросом, почему мы когда-либо создавали код аутентификации для каждого отдельного веб-сайта, который мы создали, или почему мы должны создавать уникальную личность везде, где мы заходили в Интернет.
Следует также упомянуть одну вещь. У вас уже есть база пользователей с OpenID, им просто нужно войти в систему.
Это причина иметь OpenId, а не делать его обязательным.
OpenID может быть величайшим достижением со времен нарезанного хлеба, но мне не дали никаких оснований доверять «им» свою личность - кроме того, что меня заставили сделать это Джефф Этвуд / Джоэл Спольски, чтобы я здесь жаловался на это ;-)
Кто такие «они»? Вы говорите о конкретном провайдере OpenId?
@ [LKM]: "них" = любой провайдер OpenId. Кто эти люди? Могу ли я им доверять? Какова их мотивация? Что они делают с моей идентифицирующей информацией? Это безопасно? Насколько хорошо они защищают свой сайт? И Т. Д.
В списке недостатков отсутствует самый очевидный: это мечта фишера. OpenID невероятно небезопасен, и украсть ID человека при входе в систему тривиально просто.
Мэтт Шеппард находит точный ответ в вопросе: преимущество использования только OpenID состоит в том, что это меньше хлопот для создателя сайта, так как не требуется обрабатывать имена пользователей и пароли и не требуется код для создания учетной записи.
Хотя я понимаю вашу точку зрения, если кто-нибудь когда-нибудь спросит у меня номер кредитной карты в StackOverflow, я все равно заподозрю, что что-то не так. :-)
@Onorio Catenacci, я задал новый вопрос по этой теме, чтобы подробнее объяснить, почему это небезопасно. Кража документов - это гораздо больше, чем просто запрос номеров кредитных карт. stackoverflow.com/questions/182258/…
Несомненно, простота использования (после настройки идентификатора) является явным преимуществом для OpenID?
@Sam, да, предлагать OpenID в качестве опции - это преимущество. Однако вопрос заключался в том, какие преимущества дает ТОЛЬКО использование OpenID.
OpenID доступен для фишинга ТОЛЬКО, когда провайдер использует имя пользователя / пароль. Есть много провайдеров, которые используют защищенные от фишинга учетные данные. Это делает OpenID намного более безопасным, чем стандартное имя пользователя / пароль на любом сайте RP.
@ Андрей, не могли бы вы привести несколько примеров этих защищенных от фишинга учетных данных? Это новинка для меня, и она может полностью изменить мой взгляд на открытые идентификаторы, если они действительно работают.
@ Дэвид Арно: клиентские сертификаты, аппаратные токены и одноразовые пароли и многие другие.
@David Arno, Google уже давно использует двухфакторную аутентификацию. Здесь OpenID так же безопасен, как и провайдер; в случае с Google, это чертовски надежный, на самом деле более безопасный, чем многие веб-сайты онлайн-банков.
Основное преимущество OpenID будет видно в долгосрочной перспективе. Вместо того, чтобы обращаться за удостоверением к разным сайтам, вы делаете это один раз, а затем используете его на всех сайтах, требующих уникального удостоверения. Конечно, для безопасных сайтов, таких как банковское дело и торговля, потребуется совсем другое мышление. Но для сайтов социальных сетей и т.п. вы можете легко использовать это.
Маме и папе тоже будет легко, потому что теперь им нужно запомнить только одно имя пользователя / пароль. Нам часто бывает трудно вспомнить, какой у нас логин на каком сайте, и в конечном итоге мы используем правильное имя пользователя / пароль для сайта A на сайте B. OpenID решит эту проблему. Кроме того, это хорошая модель дохода для провайдера и пользователя OpenID. Я могу предоставить одному из таких поставщиков все детали, которые я готов предоставить, и каждая такая деталь, которую я сообщу, я могу заработать деньги.
Возможно, провайдер может уговорить меня рассказать больше о себе, используя это в качестве стимула, который затем он может продавать сайтам, на которых я регистрируюсь. Итак, сайт A платит OpenID за мою информацию. Затем OpenID передает мне часть этого. Сайт A не должен управлять пользователями, OpenID получает деньги, пользователь получает деньги, все довольны :)
Таким образом, вам не придется делать OpenID обязательным. Люди сами захотят этого. После этого поставщики OpenID будут соревноваться между собой за предоставление более качественных услуг, и там, где есть конкуренция, все заинтересованные стороны будут получать более выгодные предложения. Думаю, это потрясающая идея.
Редактировать: Относительно простоев у одного конкретного провайдера; если поставщик A OpenID не уверен в обеспечении 100% времени безотказной работы, он может воспользоваться помощью другого поставщика B, и пользователь поставщика A может выбрать один из вариантов, предоставляемых поставщиком A. Сайт, который обращается к провайдеру A для аутентификации пользователя, будет знать, к каким другим провайдерам обратиться в случае, если провайдер A не работает. Он будет автоматически сохранен в его базе данных при первом входе в систему. Кто-нибудь хочет провести мозговой штурм по деталям реализации? :)
Это не преимущество для обязательного использования OpenID, а просто преимущество для его поддержки.
Согласны. Я не против OpenID, я просто считаю, что делать его обязательным - плохая разработка. Предлагайте OpenID, пропагандируйте OpenID, но только не навязывайте это своим пользователям.
Я тоже не говорил, что делать это обязательно. Я говорил, что пользователи предпочтут это не платной регистрационной форме. Кроме того, вопрос заключался в том, какую выгоду получит сайт, поставив его под мандат, а не было ли это хорошей практикой или нет ...
Я действительно согласен, что должен быть выбор. Однако я думаю, что через какое-то время людям все равно. Обычной практикой при первом посещении нового сайта является поиск окна входа в систему с открытым идентификатором или, возможно, просто ожидание, что оно будет там по умолчанию, и его отсутствие было бы плохой практикой; просто M.H.O. :)
Одно из больших преимуществ перехода только на OpenID с инженерной точки зрения заключается в том, что абстрагирование части аутентификации учетных данных позволяет пользователям выбирать методы аутентификации, которые намного сложнее, чем те, которые вы бы потрудились создать для своего сайта. Да, некоторые провайдеры OpenID легко поддаются фишингу. С другой стороны, другие пользователи OpenID входят в систему с помощью информационных карт, аппаратных токенов или телефонной проверки, и это учетные данные, которые не можешь могут быть захвачены и воспроизведены фишером.
Как Гейб Вачоб положи это:
People who want to innovate in authentication methods [...] do NOT have to be the same people who innovate in offering services on the web (any one of a million folks running Mediawiki, Drupal, etc). That "delinking" of authentication innovation and service innovation is what is valuable in OpenID.
Таким образом, используя OpenID, вы можете предложить своим пользователям более надежные методы аутентификации. Абстракция позволяет реализовать один интерфейс, а затем вы можете выбрать любого поставщика для работы, независимо от того, используют ли они восьмизначные пароли в открытом виде или нейронные имплантаты типа "запрос-ответ".
Как обсуждалось в одном из подкастов, он добавляет барьер для входа страннику, задаваясь вопросом, может ли это быть то место, где они должны разместить свои Yahoo! Отвечает на вопрос.
Это несколько элитарно, но, учитывая направленность этого веб-сайта, в частности, вполне приемлемо отказать любому, кто не может понять процесс Open ID, и любой, у кого действительно есть реальный вопрос, на который ему нужно ответить, может потрудиться проработать любой небольшие трудности.
Я поддерживаю OpenID, в основном с точки зрения простоты использования. Я еще не уверен в его безопасности, но у него большой потенциал. Можно много чего сказать по этому поводу, но я просто хотел ответить на следующие два момента:
Adds a non-trivial amount of time to the signup
Только при первой настройке. Кроме того, благодаря поддержке таких компаний, как Yahoo, многим людям даже не придется беспокоиться о настройке OpenID, если они этого не хотят. Если бы вы использовали Google или кого-то похожего в качестве вашего провайдера OpenID, вы бы сочли их небезопасными по своей сути? И как часто вы ожидаете, что у них будут простои?
It is a Phisher's Dream
Я согласен с тем, что отчасти это может быть правдой. Но разве фишинг - не более социальная проблема, чем технологическая? OpenID может упростить задачу, но это не отменяет того факта, что настоящая проблема - это пользователь. Гораздо важнее информировать пользователей о том, как действуют фишеры, чем пытаться защитить их с помощью технологий.
По крайней мере, OpenID отправляет вас к вашему провайдеру OpenID для входа в систему. Я читал блог на blogspot, и есть ссылка для подписки на этот блог (предположительно, сообщить мне, когда появляются новые сообщения), для этого появляется окно с запросом моего имени пользователя и пароля Gmail.
Даже если предположить, что это настоящий, а не фишинговый сайт - теперь у них (возможно) есть логин для моего Gmail, моих документов Google, моих приложений Google - все!
Из своего опыта работы с OpenID я вижу ряд существенных преимуществ:
Если вы решите войти в систему с помощью доверенного провайдера OpenID, например. Verisign PIP + VIP вы можете воспользоваться преимуществами внеполосных механизмов аутентификации SecureID. Это следует рассматривать как главное преимущество, которое перевешивает ВСЕ другие. Вы больше не доверяете какой бы то ни было аутентификации на основе дрянной формы на сайте, к которому вы обращаетесь, вы доверяете Verisign VIP или любому другому провайдеру OpenID.
Интернет-кроличья нора? Похоже на плохую реализацию, и я, например, не знаю, о чем вы имеете в виду.
Вы не можете легко украсть детали аутентификации, их можно сделать почти невозможным, чем то, что у нас уже есть! Вы можете обманом заставить меня думать, что я обращаюсь к своему провайдеру, но Verisign, например, имеет возможность не разрешать или принимать перенаправления. Я также считаю эти фишинговые проблемы чем-то тривиальным, особенно если сравнить это с преимуществами механизмов внешней аутентификации, которые вы можете получить через своего провайдера аутентификации OpenID. Предположим, вы один раз использовали фишинговую ссылку на ключ RSA, в следующий раз он будет недействителен или, может быть, просто бесполезен, если вы скажете использовать сертификат браузера.
В заключение, OpenID - это просто эволюция текущей системы, адрес электронной почты, на который нужно проверять. Если ваша учетная запись электронной почты является вашей текущей единой точкой отказа, тогда да, ваш OpenID может стать вашей новой единой точкой отказа в случае, когда OpenID, который вы контролируете, больше не находится под вашим контролем. Итак, если вы доверяете только своему почтовому серверу, просто разместите свой собственный URL-адрес OpenID. Если вы доверяете Gmail, используйте URL-адрес Gmail для своего OpenID, потому что по тому же токену вы уже доверяете Gmail в качестве системы единого входа, поскольку ваша учетная запись Gmail может в конечном итоге получить пароли вашей учетной записи.
Это несложно, но я вижу, что некоторые люди могут испытывать трудности с пониманием основных концепций механизмов аутентификации. Если я МОГУ войти с помощью своей карты SecureID (через моего провайдера OpenID) на сайт, на котором у меня есть учетная запись, Я БУДУ. Так что если бы это был единственный вариант, я бы им воспользовался!
По вашему вопросу о проверке ваших собственных учетных записей, что: «... почтовый ящик пользователя а) недоступен из-за опечатки, б) переполнен или в) провайдер не работает». Это правда, но если учетная запись электронной почты не работает, они также не могут подписаться на открытый идентификатор.