Подтвердить что ты не робот

Каково будущее OpenID, OpenID2, Open Connect? Стоит ли внедрять провайдера?

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

Это, что удивительно, довольно сложно и сложно.

Несмотря на то, что многие сайты допускают логины OpenID (например, этот), я обнаруживаю следующие проблемы:

  • Многие простые решения для самостоятельной идентификации "Roll-Your-Own" OpenID Provider теперь являются утилитами для паролей.
  • В OpenID были довольно серьезные проблемы с безопасностью:

http://en.wikipedia.org/wiki/OpenID#Security

  1. Многие поставщики OpenID, похоже, исчезли (MyOpenID.com, getopenid.com и т.д.).
  2. Протокол, кажется, постоянно меняется с удалением предыдущих версий (возможно, из-за проблем с безопасностью?)

В качестве примера, это решение на SO от Aug'13 об использовании Google Plus/Profiles в качестве делегата теперь получает от Google сообщение о том, что поддержка OpenID 2.0 удаляется из Google к апрелю и заменяется на OpenID Connect:

Делегировать OpenID в Google (НЕ Google Apps)

Кто-нибудь даже предлагает простой провайдер единого удостоверения OpenID Connect? Глядя на OpenID-провайдер программного обеспечения OpenID, не упоминается никаких решений OpenID Connect вообще, не говоря уже о том, что страница не обновлялась через 4 года!

http://wiki.openid.net/w/page/12995226/Run%20your%20own%20identity%20server

Просматривая всю эту информацию, я очень счастлив, что пару лет назад я отложил свой план на реализацию OpenID 2.0 на моем сервере, поскольку это похоже на то, что он уже устарел, и я не могу найти простой способ просто подтвердите мою личность. Удивительно, что я не могу просто выполнить установку одного пакета и отредактировать файл конфигурации и перейти. Большинство простых реализаций связаны с установкой и использованием PHP, у которого есть собственные проблемы безопасности, о которых нужно узнать.

Итак, любой, кто является экспертом по OpenID и где он собирается, кто может дать мне несколько советов о том, как просто настроить мой поставщик удостоверений или если это стоит трудности? Мне бы хотелось иметь контроль над моей информацией и распространением моего адреса электронной почты, а также иметь постоянную личность, но если стандарт будет продолжать меняться, то он не является действительно постоянным.

4b9b3361

Ответ 1

OpenID 2.0 устарел, и только сегодня OpenID Foundation одобрил OpenID 2.0 в Руководство по миграции OpenID Connect.

Я не эксперт по OpenID, но важно знать, что OpenID Connect принципиально отличается от старых версий. В частности, он работает поверх OAuth, поэтому Сторона, оказывающая поддержку, должна получить учетные данные OAuth от Поставщика услуг.

Существует спецификация, которая позволяет RP автоматически получать эти OAuth Credentials (называемые Dynamic Client Registration), но спецификация отмечена как "необязательная", он широко не поддерживается в клиентских библиотеках, и я серьезно сомневаюсь, что мы увидим множество приложений, реализующих динамическую регистрацию клиентов.

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

Ответ 2

Если вы хотите настроить свой собственный провайдер OpenID, я могу предложить два доступных варианта, которые вы могли бы посмотреть. Это оба решения PHP.

Первое проще всего реализовать, phpMyID, устарело его владельцем, но оно снова поднялось на GitHub. Я быстро проверил это вчера, используя PHP 5.6.8. Это всего лишь два файла PHP.

Второй называется SimpleID и является тем, что я использую в настоящее время. Я использовал его для входа на несколько сайтов, включая этот.

Однако OpenID Connect тоже. Я ищу решение для этого, чтобы обновить (этот поиск привлек меня к вашему вопросу). Лучший кандидат, который я нашел до сих пор, называется Gluu, но он кажется бегемотом, и я еще не пробовал его.

SimpleID имеет Trac ticket и ветвь развития для поддержки OpenID Connect, но он выглядит неактивным.

Еще одна интересная вещь, которую я нашел во время поиска, - веб-знак и IndieAuth. Не OpenID, но тем не менее интересно.

Ответ 3

То, что ожидает будущее, конечно, трудно предсказать.

Google внедрил OpenID Connect. У них есть Discovery, но как общий IDID IDID, который не очень полезен без Dynamic Registration, так как вам все равно нужно зарегистрировать приложение и получить ключи. Это может сработать в их пользу. Я боюсь, поскольку люди могут предпочесть логин Google и, следовательно, не заботятся о OIDC на основе предоставленной пользователем электронной почты или URL-адреса.

Согласно OpenID Certifications, очень немногие имеют Dynamic Registration, но все еще очень молоды и могут меняться.

I искренне надеюсь, что полный OpenID Dynamic получит широкое усыновление, предпочтительно провайдерами электронной почты, чтобы мы могли иметь единый вход на основе вашего электронного письма, что-то большее, чем большинство людей может помнить, а не какую-то неясную конечную точку http.

Я собираюсь сделать это для своего собственного сервера; простой небольшой сервер OIDC и webfinger в node.js на основе openid-connect. Мы должны сделать это легко и широко, я добавлю ссылку в комментарий здесь, когда мой минисервер доступен с npm install: -)