Я не создаю большие сайты, поэтому я в основном пользователь openid и его различных реализаций.Я использую openid здесь в SO, и мне это нравится, потому что я использую свою учетную запись gmail для всего (я планирую выйти из gmail в будущем, но теперь я использую это для всего), поэтому мне не нужно помнитьдругой логин / аккаунт.
Итак, по моему наивному мнению пользователя, я думаю, что использование openid просто : у вас много провайдеров, когда пользователь пытаетсявходя в систему, ваше приложение спрашивает своего провайдера: «может ли этот человек войти в систему?», провайдер возвращает «этот пользователь действителен» с некоторыми данными (некоторые могут вернуть больше данных, чем другие) или просто ничего не возвращает, если оннапример, был неудачный логин.
Я планировал использовать openid на будущем веб-сайте.По-моему, я думаю, что использовал бы какую-то библиотеку, которая могла бы «абстрагироваться» для меня: ваш пользователь входит в систему с поставщиками, ваше приложение не знает каждого из них, и эта библиотека возвращает уникальный идентификатор из имени пользователя изпоставщик.Например: myemail@gmail.com используется для входа.У него есть уникальный идентификатор в lib, возвращаемый после вычисления хеша или чего-то еще, и ваше приложение использует это для всего.
В моем приложении я бы попытался иметь дело только с этим идентификатором, созданным openid libm taht.будет обрабатывать Facebook, Twitter, Gmail и тому подобное.Возможно, у этой библиотеки есть таблица с именем провайдера, и когда человек впервые заходит на ваш сайт, у вас есть строка в базе данных, говорящая «этот уникальный идентификатор из твиттера».Теоретически, мне кажется, что это работает.
... но после прочтения Openid - это кошмар , я начинаю думать, действительно ли это будет хорошей идеей, даже пытаясьнайти такую библиотеку, которая бы прекрасно работала.
Поскольку каждый (провайдеры openid) теперь имеет свой собственный механизм входа в систему, вместо того, чтобы беспокоиться только об одной системе (моей собственной, я должен был создать свой собственный механизм входа в систему)- теперь я должен беспокоиться о десятках систем - и openid должен был адресовать точно .Теперь мне нужна огромная библиотека, которую я представляю, чтобы абстрагировать весь этот беспорядок.
Существует ли библиотека, подобная описанной мной?Если да, то возможно ли создать приложение, которое, по крайней мере, пытается вести себя как действительно "openid" мечта?
(я знаю, что openid - это не то же самое, что авторизация на Facebook и тому подобное ... но с концас точки зрения пользователя, это то же самое ИМХО, «использовать один и тот же логин на разных веб-сайтах». Я хочу абстрагироваться от процесса входа в систему, даже если протокол был создан не только для этого. Для многих служб вам просто нужно знать, кто-токем она себя утверждает.)