Новый модуль Open Login

Аватар пользователя seaji

Привет всем.
Вот написал модуль. Он расширяет возможности модуля OpenID.
Причем, если у вас уже есть пользователи с зарегистрированными идентификаторами OpenID, то они все так же и дальше могут ими пользоваться, данные ни куда не исчезнут.
Во первых, исправлен известный баг с использованием Гугла в качестве OpenID сервера (http://drupal.org/node/339600). исправления уже вошли в ядро.
Во вторых, добавлен удобный виджет для выбора провайдера OpenID для входа. При успешном входе идентификатор записывается в кукисы и в следующий раз он автоматом вставляется в поле OpenID.
Скачиваем с d.o  Open Login

P.S. Если вы хотите использовать Гугл, то придется включить сокет ssl в php, иначе Гугл не будет работать. Проще говоря, php должен иметь возможность отправлять запросы по протоколу https://. На данный момент у меня на хостинге отсутствует эта возможность, поэтому Гугл выдает ошибку. Веду переговоры с хостером.

Скачиваем с d.o  Open Login

Примерчик можно посмотреть здесь: http://videotech.spb.ru/user

ВложениеРазмер
Иконка изображения 2009-03-28_014725.gif15.43 КБ
Версия Drupal:
0 Thanks

Комментарии

Аватар пользователя sashken
sashken 9 лет назад

Че то не получается войти

выбираю гугл:
Извините, но это неправильный OpenID. Пожалуйста, проверьте правильно ли вы написали ваш ID.

Аватар пользователя seaji
seaji 9 лет назад

Я же про это уже написал.

seaji написал:
Если вы хотите использовать Гугл, то придется включить сокет ssl в php, иначе Гугл не будет работать. Проще говоря, php должен иметь возможность отправлять запросы по протоколу https://. На данный момент у меня на хостинге отсутствует эта возможность, поэтому Гугл выдает ошибку. Веду переговоры с хостером.
Аватар пользователя lastormo
lastormo 9 лет назад

не смог зайти, потому что ну уж очень зверская каптча
а так все очень мило и красиво, спасибо большое з модуль :)

Аватар пользователя VladSavitsky
VladSavitsky 9 лет назад

Выглядит симпатично.
Попытался залогиниться через Яндекс. Яша меня опознал и вернул на сайт. Сайт выдал:
Invalid CAPTCHA token.
Имя пользователя содержит недопустимый символ.
Вы должны указать адрес электронной почтыl.
OpenID registration failed for the reasons listed. You may register now, or if you already have an account you can log in now and add your OpenID under "My Account"

PS. Мой логин на яндексе: vlad-savitsky

Аватар пользователя seaji
seaji 9 лет назад

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

Аватар пользователя tyred
tyred 9 лет назад

хорошая штука, поставил бы себе.

Но! ошибка после выбора того же "Яндекс" как у VladSavitsky смущает очень.

После выбора ввода имейла и капчи, оказывается, что и логин неправильно введен: выглядит он как http://openid.yandex.ru/username, т.е. нужно догадаться и сменить просто на username .. вообщем через три обновления страницы, если все будет хорошо, я попадаю на сайт.

Обычная регистрация у меня займет меньше времени.

Аватар пользователя seaji
seaji 9 лет назад

Этот модуль зависит от модуля OpenID, т.к. он сам не создает нужных таблиц, а пользуется таблицами модуля OpenID.
Он особенно актуален для тех, кто уже пользуется этим модулем.

ЗЫ. Вот Вы говорите, что обычная регистрация займет меньше времени, а у меня вопрос, в случае обычной регистрации Вы что выберите себе логин вида http://openid.yandex.ru/username ???
К тому же, на самой первой странице Вам было ясно сказано, что логин содержит недопустимые символы и его нужно поменять.

И все таки, по поводу удобства я думаю, что это очень индивидуально. Кто то любит запоминать кучу логинов и паролей, а кто то предпочел бы пользоваться одним логином и паролем. :)

Аватар пользователя alergi@drupal.org
alergi@drupal.org 9 лет назад

А можно ещё как-нибудь к стандартному блоку входа добавить пункт выбора провайдера?

Аватар пользователя pro-online.ru
pro-online.ru 9 лет назад

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

Объясню, зачем это нужно. Я хочу дать возможность оставлять комменты посетителям, у которых есть какой-нибудь OpenID, но запретить комментирование анонимам. Например, в качестве меры защиты от спама.

Аватар пользователя seaji
seaji 9 лет назад
alergi@drupal.org написал:
А можно ещё как-нибудь к стандартному блоку входа добавить пункт выбора провайдера?

Да, можно, но у меня уже нет времени этим заняться.
Смотрите в моем модуле функцию openlogin_form_alter() Если немного ее подправите, то можно сделать и это.

pro-online.ru написал:
Например, в качестве меры защиты от спама

В Друпале такой функциональности нет, но вот в ворд прессе есть, значит такое возможно сделать.
Вообще системный модуль openid сыроват.

Аватар пользователя afishi
afishi 9 лет назад

а что на счет 5 друпала?

Аватар пользователя seaji
seaji 9 лет назад

Молодцы ребята из службы поддержки моего хостинга (Гудзон Хост), хватило одного письма и они пересобрали PHP с поддержкой openssl. И это не смотря на то, что у меня тариф 4 у.е в месяц. :)
Теперь работает вход через гугл.

Аватар пользователя andypost@drupal.org
andypost@drupal.org 9 лет назад
pro-online.ru написал:
А нет ли модуля для регистрации с помощью OpenID? Так, чтобы, например, вообще никакие пароли не создавались, и OpenID был бы единственным способом входа в систему для нового юзера? Мне что-то не удалось найти.

Вообще-то openid (стандартный модуль) именно так и работает

Аватар пользователя seaji
seaji 9 лет назад

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

Аватар пользователя pro-online.ru
pro-online.ru 9 лет назад

Я думаю, не нужно ограничиваться комментариями.

Мне, допустим, мое имя пользователя на каком-то сайте нафиг не нужно. Я хочу две вещи:

1. Логиниться с помощью OpenID.
2. Использовать свое настоящее имя (например, с помощью модуля RealName).

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

Создать на Д такой сайт пока нельзя именно в силу несовершенства поддержки OpenID.

UPD: Пардон, кажется, уже можно. См. ниже.

Аватар пользователя andypost@drupal.org
andypost@drupal.org 9 лет назад

Появился новый модуль  OpenID autoregistration

 seaji не пробовал свои наработки выложить на d.o может в виде расширения какого-нить из уже существующих модулей?

Аватар пользователя seaji
seaji 9 лет назад

Я бы очень хотел. Но тут встают две проблемы.

Во первых, это мой, не удачный, опыт общения с CVS репозиторием друпал.орга. Когда я попытался выложить перевод D6 и в итоге пообломал все копья.
Подробности здесь: http://drupal.ru/node/16160

Во вторых. Как я понял, на drupal.org принимают только патчи в их классическом виде. Т.е. если ты пишешь, что в таком-то файле нужно поменять эти стороки на другие, то они это не понимают. И важнее всего оказывается не польза для пользователей, а то, что бы патч был бы оформлен в классическом стиле.
Допустим, вот тут: http://drupal.org/node/351287
я выложил важный патч для pathauto, буду краток, меня послали в Ж...

Блин, ну не умею я создавать патчи или пользоваться репозиторием, так что я полное г.?
И не то, что бы я просто не умею и все..., так ведь я пытался это сделать, но убив на это два-три часа я больше не могу себе позволить тратить на это свое время, слишком много более важных дел.

Аватар пользователя andypost@drupal.org
andypost@drupal.org 9 лет назад

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

Аватар пользователя afishi
afishi 9 лет назад

есть новости?
что получилось?

Аватар пользователя STINGER
STINGER 9 лет назад

Отличный модуль! Как раз то, что я искал! Врубаешь свободную регистрацию, отрубаешь всякие каптчи, и все, учетки свободно создаются на основе OpenID данных.
Можно вообще стандартную друпаловскую регистрацию отрубить, чтобы боты не регались свободно.

Аватар пользователя seaji
seaji 9 лет назад

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

Аватар пользователя afishi
afishi 9 лет назад

народ. и все же что нибудь работаеющее на 5 есть?

Аватар пользователя afishi
afishi 9 лет назад

я себе ставил... этот модуль.. и он даже работал.. а сейчас. нажимаешь. и ничего.. нет возможнсоти зайти через ОпенИд.

Аватар пользователя seaji
seaji 8 лет назад
andypost@drupal.org написал:
Ну как прогресс с выкладыванием модуля на drupal.org ?

А оно нужно? Как считаешь?

Аватар пользователя andypost@drupal.org
andypost@drupal.org 8 лет назад

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

Надеюсь, что сией модуль в купе с Модуль В Контакте положит начало...

Аватар пользователя seaji
seaji 8 лет назад

Хорошо, займусь ;)

Аватар пользователя Химический Али
Химический Али 8 лет назад

У модуля (и, наверное, всего OpenID) есть один большой недостаток. Вот он:


Достаточно было просто перенаправлять юзера на сайт openid-провайдера, где он зарегистрирован (кликом по логотипу, например) и получать оттуда ответ. Зачем вводить непосредственно урл-идентификатор (и вообще что бы то ни было) мне совершенно непонятно.

Аватар пользователя seaji
seaji 8 лет назад
Химический Али написал:
Достаточно было просто перенаправлять юзера на сайт openid-провайдера, где он зарегистрирован (кликом по логотипу, например)

В моем модуле именно так и происходит.
Вы кликаете на провайдере и тут же осуществляется вход.

Аватар пользователя seaji
seaji 3 года назад

Спешу всех поздравить.
Я причесал более менее этот модуль, теперь он стал похож на человека.

- выкинул из модуля всю OpenID функциональность. Теперь он умещается в сотню строк.
необходимость подтягивать функциональность была в хаке для гугла. Теперь этот хак не требуется :)

- исправил некоторые мелкие, но досадные баги.

Теперь это чисто JS виджет для выбора провайдера OpenID
список провайдеров гибко настраивается в конфигурационном файле.

скрестив этот модуль с vk_openapi и fbconnect можно сделать такую, прикольную менюшку:

код здесь: http://drupal.ru/node/45088?page=1#comment-245638

UPD. Да, чуть не забыл сам модуль прикрепить :)

Аватар пользователя STINGER
STINGER 8 лет назад

Круто! Сейчас попробую поставить. Еще б сюда Twitter и MySpace и вообще шик был бы.
На Drupal.org не думаете релизить?

Аватар пользователя afishi
afishi 8 лет назад

и все же реально ее с майл.ру доделать? + добавить одноклассники?
и зачесать в 5 варианте?

Аватар пользователя seaji
seaji 8 лет назад

По поводу майл.ру дам небольшой инсайд.
По моим каналам стало известно, что в скором будущем что то грядет :)
Не только относительно Друпала, а вообще.
Как говорится, "следите за новостями".

Аватар пользователя afishi
afishi 8 лет назад

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

Ну есть же данные по майлу?! А что на счет одноклассника?

Аватар пользователя seaji
seaji 8 лет назад

Я уже сказал.
Мейлом.ру будет организовано некоторое мероприятие.
Какое точно, пока не совсем ясно.
Ждите новостей.

Аватар пользователя afishi
afishi 8 лет назад

я знаю что одноклассники майл и ICQ - объеденяться.... но это не значит что мы должны ждать годы!

Аватар пользователя Geldora
Geldora 8 лет назад

да, осталось только вход по мейл.ру АПИ сделать и будет вообще - сказка!

Насечт однокласников, разве они тоже открыли АПИ?

Сейаджи, спасибо вам большое :)

Аватар пользователя afishi
afishi 8 лет назад

да. все открыли.

Аватар пользователя seaji
seaji 8 лет назад

Хочу выразить свою благодарность andypost@drupal.org за то, что подтолкнул меня разобраться с публикацией модуля на drupal.org
Что ж я потратил сегодня день не зря.
Итак, встречайте:
http://drupal.org/project/openlogin

Аватар пользователя afishi
afishi 8 лет назад

ПОЗДРАВЛЯЮ! Молодцы!
Вот бы ее в 5 и все было бы на 200%

Аватар пользователя andypost@drupal.org
andypost@drupal.org 8 лет назад

Отлично! Просьба поправить основной пост - добавить ссылку на страницу проекта  Open Login