Openid действительно кошмар? Есть ли библиотека с открытым исходным кодом, которая могла бы «абстрагировать» все во внутренний идентификатор?

Я не создаю большие веб-сайты, поэтому я в основном пользуюсь openid, и это различные реализации.Я использую openid здесь, в SO, и мне это нравится, потому что я использую свою учетную запись gmail для всего (я планирую выйти из gmail в будущем, но теперь я использую его для всего), поэтому я не необходимо запомнить другой логин / учетную запись.

Итак, в моем наивном уме пользователя, я думаю, что использовать openid просто : у вас много провайдеров, когда пользователь пытается войдите в систему, ваше приложение спрашивает своего провайдера: «Может ли этот человек войти в систему?», провайдер возвращает «этот пользователь действителен» с некоторыми данными (некоторые могут возвращать больше данных, чем другие) или просто ничего не возвращает, если он например, был неудачный вход в систему.

Я планировал использовать openid на будущем веб-сайте. На мой взгляд, я думаю, что я бы использовал какую-то библиотеку, которая могла бы «абстрагировать» это для меня: ваши пользовательские входы в систему с поставщиками, ты r приложение не знает каждого из них, и эта библиотека возвращает уникальный идентификатор из имени пользователя от провайдера. Например: (скрытый) используется для входа в систему. У него есть уникальный идентификатор в библиотеке, возвращаемый после вычисления хэша или чего-то подобного, и ваше приложение использует его для всего.

В моем приложении я бы попытался иметь дело только с этим идентификатором, созданным openid libm, который будет обрабатывать facebook, twitter, gmail и тому подобное. Возможно, в этой библиотеке есть таблица с именем провайдера, и когда человек впервые заходит на ваш сайт, у вас есть строка в базе данных, в которой говорится, что «этот уникальный идентификатор взят из твиттера». Теоретически мне кажется, что это работает.

... но после прочтения Openid is a Nightmare я начинаю думать, действительно ли было бы хорошей идеей даже попытаться найти такую ​​библиотеку, которая бы так прекрасно работала.

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

Существует ли библиотека, подобная той, которую я описал? Если да, то можно ли создать приложение, которое хотя бы пытается вести себя как действительно "openid" мечта?

(Я знаю, что openid - это не то же самое, что facebook auth и тому подобное ... но с точки зрения конечного пользователя, это то же самое ИМХО, «использовать один и тот же логин на всех сайтах». Я хочу абстрагироваться от процесса входа в систему, даже если протокол был создан не только для этого. Для многих сервисов вам просто нужно знать, есть ли кто-то, кто она утверждая, что это так.)

13
задан Somebody still uses you MS-DOS 18 November 2010 в 21:43
поделиться