Аутентификация с помощью открытого стандарта OpenID

Всем привет! Наверняка каждый из нас зарегистрирован на огромном количестве сайтов, но иногда становится лень заводить очередной аккаунт, заполняя различные формы и отвечая на вопросы капчи. Есть ли выход из этой ситуации?

OpenID

Аутентификация с помощью OpenID — это хороший инструмент, позволяющий владельцам сайтов значительно упростить процедуру входа пользователей в учётную запись. При этом пользователям не потребуется вводить свои данные для регистрации.

Провайдеры OpenID в прошлом получили широкое распространение, в их число входили такие крупные компании, как Яндекс, Google, Mail.ru, Yahoo. Со временем, каждый из провайдеров один за другим стали прекращать свою работу по протоколам OpenID 1.0 и OpenID 2.0, предлагая более безопасные механизмы авторизации на других сайтах.

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

Актуальным на данный момент является третье поколение OpenID-технологии с дополнительными механизмами для надёжного шифрования и цифровой подписи, которое представляет собой аутентификационную надстройку над протоколом авторизации OAuth 2.0.

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

OpenID Connect — это надстройка над протоколом авторизации OAuth 2.0 для проверки личности пользователя на основе аутентификации, выполненной авторизационным сервером.

Организациям, которые хотят обеспечить гарантию и подтвердить соответствие своего способа авторизации стандарту OpenID Connect, требуется пройти сертификацию в некоммерческой организации OpenID Foundation. Сертифицированные партнёры получают право размещать на своём сайте специальный знак:

Сертификация OpenID

Среди международных интернет-компаний, прошедших сертификацию OpenID, можно выделить Google, Yahoo, Microsoft, PayPal, Oracle, IBM и многие другие. В российском сегменте крупные компании проигнорировали возможность сертификации, но всё же предлагают своим пользователям API для авторизации на основе открытого протокола OAuth 2.0, в некоторых случаях с учётом требований OpenID Connect.

Делегирование OpenID

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

Существует несколько способов реализации делегирования: сертифицированные провайдеры, серверы, а также внешние библиотеки (на PHP, JavaScript, Python и других языках) — все они представлены в документации для разработчиков на официальном сайте.

myOpenID

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

К сожалению, провайдер myOpenID закрылся 1 февраля 2014 года.

Прекращение его работы, по словам основателя, связано с массовым распространением социальных сетей и почтовых сервисов, предлагающих свои методы аутентификации. Остаётся выбирать другого провайдера OpenID или использовать внешние библиотеки. А вы используете OpenID для авторизации на сайтах?

  1. 5
  2. 4
  3. 3
  4. 2
  5. 1
(3 голоса, в среднем: 4.7 из 5)
  1. Маргарита

    А чтобы на сайте можно было оставлять так сообщения, настраивать нужно?

    Ответить

  2. Кристина

    А я вот что-то с этим опеном никак не подружилась 🙁 Сколько не пыталась там зарегистрироваться, все время пишет, что такой е-майл уже есть в базе данных или что-то вроде того. Ну я и плюнула на это дело)))

    Ответить

  3. Светлана Бобровская

    Кристина, у меня та же история! Вроде не полная идиотка, но настроить не смогла, сколько ни пыталась.

    Сейчас думаю — это к лучшему. Не вижу ничего хорошего, что тебя постоянно просвечивают со всех сторон, связывая все аккаунты. Это какое-то виртуальное чипирование 🙂

    Ответить

  4. Марина Лазарева

    Кристина, угу у меня тоже нечто подобное. Сначала все получалось, а потом перестало работать.

    Не знаю. Не работает у меня. Пытаюсь оставить коммент на блоге от Blogger, вставляю OpenID URL от openid.yandex.ru/eLzer/ перенаправляет на страницу яндекса, возвращает в блог, но без комментария.

    Почему так? Что-то не работает или я что-то не так делаю?

    Ответить

  5. Webliberty

    Маргарита, там немного другая история, в продолжении этой тему у меня уже написан пост. Вообще планировал все в одном сделать, но получилось очень много, не каждый любит читать большие тексты, решил разделить на две части)

    Кристина, бывает, может что-то упустили из виду и не точно делали…

    Светлана Бобровская, замечается такое, что все кругом взаимосвязанным становится. Вроде система становится открытой и это хорошо, но и безопасность быть может падает от такой интеграции…

    Марина Лазарева, так может на том блоге включена модерация сообщений и Ваше просто не прошло проверку, стоит подождать. Я пробовал на своем аккаунте в гугле, все получилось.

    Ответить

  6. Avangardist

    Здравствуйте Денис. А Вы не разбирались как реализовать в подписи OpenID адрес своего блога? Вместо привычной сылки на регистратора с ником. Я видел статью в интернете 2008 года, в которой данную проблему решает плагин для wordpress «WP-Yadis». Но так как новая версия WordPress несколько раз обновлялась за прошедшее время, мне стремно его проверять. Может у Вас есть идеи по этому поводу.

    Имхо: светить свой ник с адресом того же яндекса не имеет смысла (хоть это и упрощает возможность авторизации), нужно оставлять ссылку на свой ресурс иначе игра не стоит свеч!

    Ответить

  7. Webliberty

    Avangardist, здравствуйте! Разбирался, уже отвечал Маргарите на этот счет — пост готов, будет опубликован в среду, т.е. уже завтра)

    Ответить

  8. Владимир Жданов

    Аха, так вот что это такое, этот опенайди. И так все просто оказывается. Спасибо, Денис! 🙂

    Ответить

  9. Webliberty

    Владимир, все просто) Число серверов, предоставляющих подобные услуги не ограничивается упомянутыми мною. Использовать или нет такие настройки — решать каждому, но скорее всего пригодиться тем, кто часто комментирует блоги с возможностью входа по OpenID. В их числу в первую очередь относятся Блоггер и ЖЖ.

    Ответить

  10. Владимир Жданов

    Да и не только блоги. Я часто вижу на различных сайтах, где требуется регистрация, чтобы получить доступ к чему-нибудь, нужно зарегистрироваться, либо войти через ФБ или ВК или ОпенАйди. Вот, буду теперь знать. Спасибо! 😉

    Ответить

  11. Xstroy

    Когда-то тоже писал про это статью 😮 , только дополнительно предлагал варианты собственного OpenId сервера.
    Сам же в результате остановился на OpenId от Яндекса для комментирования. Проблем с узнаванием (что иногда бывает на некоторых сайта) не возникает.

    Ответить

  12. Маргарита

    Как-то сложно мне все это показалось…

    Ответить

  13. Webliberty

    Xstroy, очень интересно 🙂 А я так и не стал останавливаться на этом, потестировал на примерах и все) Редко на моем пути встречаются такие блоги, где есть возможность использовать OpenId, так что решил не загромождать исходный код страницы.

    Маргарита, в чем именно сложность, если что могу подробнее объяснить. Самое простое — использовать сервера Яндекса, меняете пару строк в последнем приведенном примере и вставляете в заголовок — все, можно пользоваться. Если не хотите светить свой логин от почты — воспользуйтесь myOpenID.

    Ответить

  14. Марина

    Ну народ-то любит, когда вот так, как у Вас форма сделана ;), а опен-ид..- гиммор тот ещё. Денис, дизайн такой свеженький у блога, только хочется текилу к лайму вместо подснежников! 😳

    Ответить

  15. Webliberty

    Марина, ну при этом и регистрация у меня на блоге не требуется) В том случае если регистрация необходима — данный способ авторизации просто выручает. Так весна ведь, подснежники 😉

    Ответить

  16. Елена Рольхайзер

    Мдаа… плохо быть чайником. Всё сделала, как Вы сказали, кроме последнего шага. Никак не получается вставить/отредактировать код в редакторе. Снизу (в редакторе) такая надпись: «Чтобы сохранить изменения, нужно сделать этот файл доступным для записи.» Что значит «сделать этот файл доступным для записи»? Заранее большое спасибо!

    Ответить

  17. Webliberty

    Елена, назначить для файла через FTP клиент или через веб-интерфейс управления хостингом (в менеджере файлов) права доступа 644.

    Ответить

  18. SEO осень

    А если зарегистрироваться таким образом, указав адрес своего домена. Будет перепадать часть вес сайта на котором комментирую на мой, указанный в опенайди?

    Ответить

  19. Webliberty

    SEO осень, по идее да, чтобы убедиться окончательно, нужно смотреть исходный код элемента, быть может он закрывается от индексации.

    Ответить

  20. Ренат

    Для всех чайников хочу посоветовать OpenID провайдер Loginza. В нем есть виджет для авторизации с помощью социальных сетей. Нужно лишь зарегистрироваться и добавить код виджета на свою страницу, в конце кода заменить в скобках [RETURN_URL] на адрес обратной ссылки на Ваш сайт, куда будет возвращен пользователь после авторизации. Все просто и удобно. Есть руководство для начинающих.

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

    Ответить

  21. Alexey

    На скрине не понятно, где посмотреть свой openID у гугла? На скрине по английски написано. Ни пояснений, ничего…

    Ответить

  22. Graf Avers

    Очень жаль, что в настоящее время уже не работает это все. 🙁

    Ответить

  23. Webliberty

    Graf Avers, myOpenID закрыт, но есть и другие провайдеры, я конечно не ручаюсь, но можно попробовать ими воспользоваться)

    Ответить

  24. Webliberty

    Чуть выше скрина приведен пример строки идентификатора с использованием логина в Гугле. Но насколько я понимаю, с тех пор много воды утекло и данный способ используется редко.

    Если Вам необходимо предоставить пользователям возможность авторизации на сайте с помощью учетной записи Google, то воспользуйтесь функцией входа Google+

    Ответить

  25. Xstroy

    Яндекс работал и работает прекрасно по настоящий момент 😮
    Один из самых удобных способов. Нужно лишь наличие собственного ящика у Яши. ЖЖ комментируется на ура…

    Ответить

  26. lex

    Может у меня паранойя… но не многовато ли развелось персональных идентификаторов? При желании любой эмитент подобных регистрашек будет знать о вас больше чем «соответствующие органы». Интернет — как решето в плане личной безопасности. Ничего в этом хорошего не вижу.

    Ответить

  27. Alexey

    Ребята, я вас обожаю. Тысячу раз уже заходил к вам на страницу и все время забываю сохранить ссылку на OpenID Google.

    Ответить

  28. Xstroy

    Блин засада… myopenid закрылся, Яша отказался от поддержки OpenId, свой сервер (что я когда-то описывал в статье) стал отдавать ошибку. Понадобился OpenId для обычного сайта (для WP достаточно плагина) и не могу найти рабочее решение.

    Денис, ничего рабочего на текущий момент не попадалось?

    Ответить

  29. Webliberty

    Как организовать на своем домене точно не знаю, сейчас многие сервисы закрылись… А вот использовать почту на Mail.ru или Yahoo в качестве OpenID все еще можно: https://webliberty.ru/openid/

    Ответить

  30. Xstroy

    Свой домен будет оставаться при авторизации?
    Это основной критерий…

    Ответить

  31. Webliberty

    Нет, свой домен там не получится использовать, а других действующих провайдеров я не нашел. Есть возможность запустить на своем сервере. Некоторые варианты уже нерабочие, но есть и те, которые доступны. На виртуальном хостинге конечно не провернуть.

    Ответить

  32. Xstroy

    В том-то и прикол, что от яши хватало записи в шапке, а в варианте с phpMyID было вообще 2 php файла + запись в шапке) phpMyID исходников уже нет, но я нашёл. Вот они и барахлят. Другие варианты тяжеловаты…

    Ответить

  33. Xstroy

    Хех 😮 погутарил с тобой и вылечил phpMyID. Оказалось проблема была в смене функций в новой версии php. Удачи!

    Ответить

  34. Самурай

    Xstroy, а можно поподробней про phpMyID. В своё время настроил OpenID по вашим рекомендациям от Яндекса. Теперь как то всё поменялось. Попытался от mail.ru сделать по аналогии с Яндексом, не получается, (при авторизации в ЖЖ происходит перенаправление на mail.ru), тем более, что я в этом ничего не понимаю.

    Ответить

  35. Xstroy

    Самурай, пробовал тоже найти работающих провайдеров openid, чтобы свой url отдавали, но не удалось. У меня в статье есть ссылка на блог Кумира святого исидора, у него выложен архив урезанной версии phpMyID (всего два файла).
    Скрипт рабочий, если изменить одну из функций (по ней выскочит ошибка при установке). Причина — изменение формата написания названия этой функции в php 5.3+ На хостинге с более ранней версией php (можно и на денвере опробовать) всё пашет и так.

    Ответить

  36. Иван

    В мэйле OpenID уже нельзя получить! При заходе на страницу просто выбивает на главную без объяснения причин, в Яндексе хотя бы написали что больше не поддерживается, а эти не уважают пользователей 😐

    Ответить

:) ;) :D :( :cry: :| :o :P 8-) :oops: :roll: :idea:

Отправляя комментарий, Вы соглашаетесь с Политикой конфиденциальности.