RuTube — первое место, где я увидел логин по OpenID, реализованный в ajax-варианте. Штука в том, что если вы заходите туда впервые, ваш OpenID-сервер должен спросить вас, действительно ли он должен отвечать RuTube, что вы — это вы. Но если сервер просто пришлет свою формочку подтверждения через ajax-соединение, которое туда открыл RuTube, ее никто не увидит. Поэтому там должно происходить что-то такое:
- сайт спрашивает OpenID-сервер авторизацию, уведомляя, что это происходит в неинтерактивном режиме ("checkid_immediate" в терминах OpenID)
- сервер говорит, что ему надо таки пообщаться с юзером и он такой режим не может предоставить
- сайт делает второй, уже не-ajax запрос ("checkid_setup"), юзер получает свою страницу подтверждения
Во всех следующих входах, если юзер сказал, что с этим сайтом надо общаться без вопросов, все происходит по ajax в мгновение ока. И вот на RuTube все так и работает. Класс!
Правда, пресловутую ложку дегтя я все равно нашел :-). Там не реализован SRE, поэтому RuTube использует URL в качестве моего никнейма (yikes!), а также полностью не в курсе моего email'а и после регистрации просит меня вписать его руками. Ну да я думаю, что реализуется.
P.S. Мы тут с elephantum'ом де-факто поспорили о судьбе OpenID. Я считаю, что он станет mainstream'ом, а он — что не станет. Пока я полон оптимизма. Microsoft, вон, тоже сделала, чтобы Windows Live ID работал как OpenID.
Комментарии: 22
У rutube одна проблем - очень уж медленно это всё работает. Проверил на своем myopenid - почти минуту заняло.
Но что радует - работает всё, включая прозрачную авторизацию сертификатами.
P.S. про форму комментария: email - required, но узнаешь об этом только после подтверждения на openid сервере - получив страницу с одикокой строчкой "name and email are required fields". При попытке нажать back (чтоб указать мейл) - получаем страницу "не можем авторизовать через openid"
Я тоже считаю, что OpenID станет мэйнстримом. У него для этого все данные: он добавляет фичу юзерам, у него отвратительная переусложнённая спецификация, и он позволяет OpenID-провайдерам получить больше информации о пользователе.
Честно говоря, если бы не качество спеки, я бы этому даже радовался.
P.S. Поддержка OpenID этим блогом до сих пор поломана, кстати. Если я пытаюсь отправить форму введя только URL, то оно некоторое время думает, после чего соединение с сервером просто закрывается и я остаюсь смотреть на страницу с формой. Повторные нажатия "Отправить" тоже не помогают. (Я на своём OpenID-провайдере в данный момент не авторизован, и запроса на авторизацию при отправке формы от него не получал.)
P.P.S. Опа, это что-то новенькое. Попытка отправить форму с заполненными полями Имя+Email+URL срабатывает похожим образом, только соединение с сервером закрывается быстрее. Т.е. нажал на кнопку, прошёл запрос на сервер, запрос отработал а на экране всё та же форма. И перечитывание странички в соседнем окне показывает, что мой комментарий не был добавлен. Сейчас попробую отправить форму не вводя URL...
В мейнстрим включаются те технологические фитчи, которые поддерживают люди, способные отстоять свои идеи. Поэтому у openid серьёзные шансы на успех. А вообще, говорить о технологии без оглядки на общество — странно. Если только вокруг нас не Матрица.
P.S. авторизация по openid на этом блоге, всё же, работает как надо.
А я уже предлагал по этому поводу на десяток щелбанов поспорить?
Да-да, предлагал. Поэтому я отказался, и мы спорим только "де-факто" :-)
Интересно было бы выслушать доводы сторон в пользу своего мнения. А то неаргументированный спор... он только по пьяни бывает :)
Справедливости ради стоит заметить, что «по пьяни» зачастую случаются и весьма аргументированные споры (с настоящими аргументами).
Да не было там никакого аргументированного спора. Я просто верю (предполагаю, содействую), что OpenID, как достаточно полезная технология для массового юзера, нуждается только в правильном представлении, и тогда ею начнут пользоваться.
я считаю, что принимать openid-аутенфикации (быть провайдером - сколько угодно) просто не выгоден большим игрокам типа Одноклассников/ВКонтакте/ЖЖ/Яндекс/mail.ru. поэтому если они и будут, то будут сильно ограничены.
эти игроки будут обязательно стараться затащить в себя пользователя целиком, а не только знать указатель на его инстанс.
а для всяческих мэшапов, да. openid хорош. но кому дались эти мэшапы? =)
Ответил в форуме. От темы RuTube мы отклонились :-)
Может не совсем по теме - но как сделать AJAX запрос на другой домен (OpenID сервер) ?
Проще всего в такой ситуации — проксировать через свой. Поскольку сайт знает, что за ajax-запросы его верстка к нему делает, он их просто может прокидывать по HTTP к удаленному серверу.
аякс-авторизация — штука безусловно хорошая, но только в тех случаях, когда от залогиненности пользователя на странице почти ничего не меняется. А если после логина страница приобретает кардинально отличный вид, то аякс тут почти без пользы.
кстати, Иван, было бы здорово всё-таки обновить для местного вордпресса openid-библиотеку ; )
а то мой arty.name сюда уж давно не пускают, приходится длинный адрес писать : (
Рад бы :-(. К сожалению, эта штука, похоже, лучшее, что есть для WordPress. А с него я пока слезть не могу.
"Длинный" адрес? А что, помогает? Сейчас проверим... Так, добавление /index.html не помогло, попробую другой домен... c index.html... Не, не работает.
Я тут поэкспериментировал с blogger.com. На котором мой OpenID раньше отлично работал. Сейчас - не работает. Был применён метод грубой силы... потом очень грубой силы... и blogger.com сдался!
Эти суки ввели список доверенных OpenID-провайдеров. Акция "хана частной жизни". К счастью, руки у них кривые, и мне удалось это обойти. Чтобы мой OpenID-провайдер, находящийся на моём домашнем сервере powerman.name, снова начал приниматься на blogger.com, мне оказалось достаточно завести домен pip.verisignlabs.com.powerman.name указывающий на тот же сайт на том же домашнем сервере. И заменить в страничке
на
Сейчас проверю, не решило ли это за одно проблему с использованием моего OpenID в этом блоге - может здешний WordPress тоже уже завёл список доверенных OpenID-провайдеров?
АГА! Заработало. Правда, блог выдал ошибку с просьбой заполнить Имя+Email (я их не вводил специально, думал он их из SRE или vcard подчитает). Я слишком наивен. Сейчас отправлю ещё раз, с этими полями...
Ну, и как вам это нравится, а?
Фух. Прошу прощения за недостоверную информацию, всё оказалось не так плохо.
Судя по всему, они (Blogger и WordPress) блокируют не по списку доверенных OpenID-провайдеров, а по отсутствию минимум двух точек в url, указывающей на OpenID-провайдер. Мне оказалось достаточно завести openid.powerman.name и всё заработало.
под длинным адресом я имею в виду
http://arty.name/index.html.ru
он работает, в отличие от http://arty.name
Иван, скорее всего в плагине отдельно лежит папочка с самой библиотекой php-openid, и именно её саму можно обновить. А в новой версии уже есть мой патч, который всё делает правильно : )
наверное, получится на моей стороне решение сделать — положить туда просимый xrds
и действительно, получилось! : )
Полагаю, пока крупные компании не перестанут так цепляться за пользователей и не разрешат прием OpenID (Микрософт что-то принимать не специт, как и большинство других, ага) - система не сможет развернуться в полную силу.
Сейчас у нам МНОГО провайдеров, но архимало акцепторов...
Для сайтмейкеров OpenIn не слишком удобен - работает криво, имеет кучу шероховатостей, не позволяет в форме регистрации передвигаться взад-вперед, и так далее. Постоянно держит в напряженке суппорт сайта, не говоря уж о конечных пользователях. Пытаюсь протестировать OAuth , чтобы познать истину в сравнении.