Плагин "OpenID"

21
В разделе «Модули» появился первый официальный плагин для LiveStreet 0.4.1 от команды разработчиков LiveStreet.
Плагин «OpenID» позволяет пользователям авторизоваться и зарегистрироваться на сайте используя OpenID или ВКонтакте.

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

Внимание! Данные плагин работает только на версии 0.4.1.

UPD Обновление плагина — livestreet.ru/blog/addons/5458.html
  • +17
  • 03 мая 2010, 13:41
  • ort

Комментарии (160)

RSS свернуть / развернуть
супер! :)
+2
Fatal error: Call to undefined method Plugin::GetPath() in /home/data/www/site.ru/plugins/openid/classes/modules/openid/Openid.class.php on line 48
0
внимательно читаем топик
+1
Пардон. Обновился.
А как выйти из профиля.
При попытке снова авторизоваться, под другим Акком контакта, автоматом заходит под старым.
0
выйти из ВКонтакте
-1
Непрокатывает. Вышел из Контакта, Убил Юзера, почистил Кэш…
Пытаюсь авторизоваться — данные контакта не спрашивает, автоматически назначает OpenID…
Предполагаю, что нужно Куки где-то убивать… при выходе…

Еще одно замечание: Значек OpenId невидно в главной форме авторизации…
-1
на сайте livestreet.ru таких проблем нет
+1
Еще одно замечание: Значек OpenId невидно в главной форме авторизации…
Тоже самое. Более того при попытке авторизоваться через VK, сообщает об ошибке безопасности
0
Тоже самое.
шаблон какой?
Более того при попытке авторизоваться через VK, сообщает об ошибке безопасности
перепроверь данные приложения в конфиге
+1
Шаблон слегка переделаный New
0
шаблон должен быть обновлен до последней версии из SVN, т.к. там добавлены вызовы хуков
0
Заработало. Заменил шаблон header
0
Идентично… вышел из Контакта, вышел с сайта, вновь захожу через OpenID при этом авторизуюсь без лишних вопросов, сразу после клика на значок OpenID, этак может любой с моего компа авторизоваться, просто кликнуть на значок и все. Как решили вопрос?
+1
Немножко не понял строчки про то что появится в профиле пользователя, т.е. вначале все же нужно зарегистрироваться на сайте?
-1
  • avatar
  • pin
  • 03 мая 2010, 14:12
зарегистрированному пользователю доступна страница livestreet.ru/settings/openid/
+1
А как же 0.3?!
-1
Сообщество считает, что 0.3.1 — для геронтофилов.
+2
на странице «вам было выслано письмо для подтверждения мыла» в заголовке (title) написано «ошибка»
+1
да, не стал делать отдельный шаблон
-1
Кажется, поймал глюк.
Вышел из своего аккаунта (на этом сайте), попытался войти по учетке ВКонтакте.
Далее опера (последняя версия) стала постоянно перезагружать страницу (на эапе входа)… Подождал 30 секунд этих перезагрузок. Страницу закрыл и вошел под «родным» логином.
+1
мне помогла очистк
а кэша
+1
На livestreet.ru тоже самое, постоянные обновления страницы, что-то вроде зацикливания. хром.
-1
попробуй еще раз
зацикливает?
+1
Да, на данный момент все здорово.
0
А что было? Какая проблема? Как это решить?
Для воспроизведения проблемы:
1. Заходим под учеткой ВКонтакте, про которую плагин не знает.
2. Попадаем на «Продолжение авторизации». тут начинается интересное.
3. Не продолжая авторизацию нажимаем на заголовок (h1) названия сайта для перехода на главную страницу.
4. Заходим на главную и нас тут же перекидывает назад на продолжение авторизации.
Замкнутый круг.
____________________________
5. Заходим в управление куками (в Опере это Инструменты->Дополнительно->Управление cookies), ищем наш домен и удаляем печеньку vk_app_(id).

Только тогда можно будет нормально зайти на сайт.
+1
А опенайди от мейлру до сих пор глючит?
-1
комментарий был удален
комментарий был удален
очень печально, что нет версии для 031 :(
-4
Какая интересная регистрация.
1. Клац на ссылку ГугльОпенИд
2. Гуглопочта
2. Ввод логина
3. Вход на сайт
4. Настройки
5. Опять гуглопочта
6. Смена пароля

Может упростить систему смены пароля, не?
0
спасибо. уже заюзал на cookorama.net :)
-3
Спасибо за отличный модуль! Только хочу высказать пожелание:
было бы отлично — сделать во вкладке openID (в настройках юзера) добавление идентификаторов через клик по соответствующим иконкам. А то разлогиниваться, чтобы добавить их, не очень удобно и долговато…
+3
Да я тоже поддержу, так как нынешний метод он не логичен, и большинство пользователей он просто поставит в тупик.
+2
кстати, да. Было бы удобно сразу в настройках добавлять OpenID аккаунты.
+ Очень неудобно, что нажимая в окошке логина на openID перекидывает на страницу, лучше бы аналогичное окно открывалось.
+2
в настройках тот же гугл-аккаунт показывается как невразумительная ссылка, в то время, как её можно было бы заменить на более наглядный e-mail. этому плагину ещё есть куда совершенствоваться.
+3
Согласен. Не логично показывать ссылки.
Но лучше показывать логин, а не email, т.к. на том же яндексе email может быть и @yandex.ru и @ya.ru :)
0
А как же 0.3? :)
-4
чуть-чуть потошню:)
«Войти, используя OpenId» или «Вход с использованием OpenId», но никак не «Вход используя OpenId»… ;)
+4
Из 0.4 получается совсем другая история! =-))
и это радует!
Спасибо!
+2
АааА! Кого расцеловать за этот плагин?))
Спасибо большущее!
0
На шаблоне new не работает? Включил и не вижу изменений.
0
нужна последняя версия шаблона — LS 0.4
0
Отлично, заработало. Думаю на главной рядом со ссылкой Регистрация и Вход нужно добавить иконку OpenID с соотв. ссылкой.
0
я что-то не понял, а что за приложение нужно вконакте создавать?
0
что-то у меня через гугл не хочет авторизовываться Ошибка: Ошибка OpenId авторизации, возможно вы указали неверный OpenID адрес выдаёт. В чём может быть проблема?
0
никто не знает как быть?
0
у меня google работает только на сервере, локально не работает
0
при попытке авторизации с вконтакте пишет Open API security breach
0
проверить правильность данных в конфиге + аторизация будет работать только на хосте прописанном в настройках приложения ВКонтакте
0
с этого место подробнее )))
0
подробнее здесь vkontakte.ru/pages.php?o=-1&p=Open%20API
0
так! первую проблему решили — осталась ещё одна )
после авторизации пишет
«Ошибка: Ошибка авторизации, верификация ВКонтакте не пройдена»
0
Приложение создал?
Конфиги прописал все?
0
приложение есть, после клика уже прелогается авторизоваться на вконтакте и после соглашения такая штука пишется!
0
А можно как то синхронизировать из контакте имя и фамилию? Может… дату рождения, или город? )
+4
Тоже интересно… а то нашим блондинкам голубоглазым очень трудно объяснить, зачем это надо…
0
Да возможность синхронизации была бы интересна.
-1
А какие требования для этого плагина к серверу (расширения может какие-то нужны особенные)?
Потому что у меня он отказывается работать вообще на сервере, в IE по клику на иконку яндекса или гугла, долго тупит потом в 500 ошибку вываливается, в других браузерах просто перегружает страницу без результатов.
В логе ошибок только этому подобные сообщения.
[09-May-2010 16:37:37] Successfully fetched 'http://openid.yandex.ru/': GET response code 200
[09-May-2010 16:37:38] Successfully fetched 'http://openid.yandex.ru/server_xrds/': GET response code 200

З.Ы. на денвере работает (кроме гугла, тут уже писали)…
-1
гм. странно. здесь пашет без www., а у меня на обоих сайтах нет

яндекс например отвечает
return_to u'http://test.ru/login/openid/enter/finish/?janrain_nonce=2010-05-10T16%3A09%3A17ZEDdOUu'
not under trust_root u'http://www.test.ru/'
-1
что-то у меня авторизация перестала работать, через гугл (Ошибка OpenId авторизации, возможно вы указали неверный OpenID адрес) и через Вконтакте (Open API security breach)

Что не так?
-2
разобрался с «вконтакте»
забыл в конфиге прописать id приложения.

а вот с гуглом, ошибка осталась. непонятно.
0
у меня тоже пишет Open API security breach
что не так?
0
  • avatar
  • dsv
  • 12 мая 2010, 11:28
Надо и к фейсбуку тогда подключать уже, скоро все в фейсбуке будем…
+1
а можно немного по подробней о «Вконтакте»? Что за приложение и где его взять?
-1
Извиняюсь за вопрос, я разобрался
0
Вопрос возник. Данный мод используется вместе со стандартной регистрацией.
Нужно выпендриться и сделать OpenId вместо обычной регистрации. Это реально?
0
Еще вопрос. Как установить мод не имея мода админпанели? Вручную?
Это вообще возможно?
Ибо LiveStreet 0.4; AdminPanel — только для 0.3.1; OpenID — только с админпанелью.
Непорядок.
-1
а где вы прочитали что плагин взаимосвязан с админпанелью?
0
активация плагина по адресу %livestreet%/admin/plugins/ — если верить тутору.

в основной поставке папки admin нет в природе. ))
ЧЯДНТ?
0
а зачем вам %livestreet%/admin/ ???? логиньтесь под админкой и заходите %livestreet%/admin/plugins/
0
под админкой, это аккаунт №1 что ли?
у меня папок admin/plugins просто нет.

снова же ЧЯДНТ?
-2
каких папок вы имеете ввиду?
example.com/admin/plugins/ должен отрабатывать точно без всякой админпанели.
0
я по этому адресу error404 вижу…
0
no way!

под админом ззалогинены?
0
alarm отменяется. после перезагрузки сервера всё заработало.
спасибо за поддержку
0
Пререстраивайте мышление! Если сказано, что надо идти по адресу site.ru/blabla/, то это вовсе не значит, что на сайте должна быть папка /blabla/!

Урл не есть название папки. Сказано «идите по адресу...», значит идите по адресу.
+1
специально для вас повторю написанное выше — сознание невозможно перестроить видя по адресу error404.
Но проблема уже решилась.
0
У меня 0.4 и без админки, все работает %livestreet%/admin/plugins/ открывает, может у вас 0.3.1, а плагин работает только с 0.4
0
AdminPanel есть и для 0.4
0
Очень хочется функционал плагина как в mod_auth_openid, а именно AuthOpenIDTrusted и AuthOpenIDDistrusted, если это все вынести в конфиг, то это позволит с легкостью добавлять новых openid провайдеров и убирать не нужных, так хочется опцию отключения авторизации вконтакте…
0
Установила плагин, получаю вот такую петрушку: getlogin.net/openid.jpg

Ошибка: NOT_FOUND_LANG_TEXT

и кнопка отправки наполовину как-то. :(
0
К фейсбуку кто-нибудь сделал подключение?
0
SQL Error: Table 'site.prefix_openid' doesn't exist at /home/f/site/new/public_html/plugins/openid/classes/modules/openid/mapper/Openid.mapper.class.php line 59
Array ( [code] => 1146 [message] => Table 'site.prefix_openid' doesn't exist [query] => SELECT * FROM prefix_openid WHERE user_id = '1' [context] => /home/f/site/new/public_html/plugins/openid/classes/modules/openid/mapper/Openid.mapper.class.php line 59 )
0
добавил таблицу вручную
0
Доброго дня!

А что делать вот с таким сообщением:
«Ошибка: Файл плагина ...\public_html\plugins\openid\PluginOpenid.class.php не найден »?

Все перепроверил =(
-1
Вроде логично. Продумываем все варианты:
-просто файла нету — Переустановите плагин, делов то…
-версия не совпадает — обновитесь до 0.4
-неизвестная бяка — ребутните своё товарищество, предварительно очистив кеш, авось поможет.
0
Уже который день бьюсь над загадкой ошибки авторизации через гугль. Вид ошибки тут уже приводился, и звучит как «Ошибка OpenId авторизации, возможно вы указали неверный OpenID адрес».
Обшарил всё, что можно. Адрес OpenID авторизации звучит как «www.google.com/accounts/o8/id» и всё вроде верно, но… Категорически отказывается работать. Был бы сильно благодарен хотя бы за пинок в том направлении, куда необходимо копать, идеи уже кончились.
Версия 0.4, плагин new от неё же, родимой (тот, что поставляется в сборке). Остальные OpenID работают отлично.
З.Ы. Спасибо автору данного плагина.
0
это к хостеру. Была подобная проблема. Исправилась установкой cURL и разрешением на его работу с https
0
В данный момент я сам себе хостер. Так что возникает следующий вопрос: как разрешить cURL'у работу с https? (сам cURL установлен и включен).
0
Не подскажите, как решили проблему? У меня хостер сказал, что всё установлено и включено.
0
при попытке войти через любой из openid выдает следующее
Fatal error: No XML parser was found in /plugins/openid/classes/lib/external/php-openid-2.1.3/Auth/Yadis/XML.php  on line 366
подскажите в какую сторону копать, поиск ничего не дал
0
Хм, боюсь оказаться неправым, но всё же…
Я бы поступил так:
Для начала проверил версию (должна быть 0.4), потом шаблон (для гарантии и то и другое взять из раздела «Скачать» тутошнего, ибо народ работоспособность подтвердил). Если не помогло — пытаться понять, на что оно таки ругается
if (!isset($p)) {
        trigger_error('No XML parser was found', E_USER_ERROR);
    } else {
        Auth_Yadis_setDefaultParser($p);
    }

366 строка, если ничего не меняли " trigger_error('No XML parser was found', E_USER_ERROR);"
А тот маленький циклик, указанный выше есть часть большего цикла, целью которого, насколько я понимаю, получение одной переменной из другой.
Возможно кто ещё подскажет, но надеяться лучше на себя.
0
Мне помогло включение библиотек xmlreader.so и dom.so
0
Еще такая проблема. Стоит данный плагин и система инвайтов. Нажимаем войти, выбираем опенАйДи… и опа, новый пользователь — регаемся без кода. Как прикрыть халяву? :(
0
отключить OpenID
0
А менее радикального способа нет? Удобно таки, как минимум, логиниться с ним. Возможно, с регистрацией, черт с ней )
0
OpenID и инвайты как бы несовместимо…
0
я бы даже сказал неуместно )
0
Ну почему же так? С регистрацией вроде бы как уяснили, тут инвайт, логин, пас. Но вот авторизация — зачем вводить логин и пароль, если можно тыцнуть на гугл и войти просто нажатием кнопки?

BarikSH, спасибо, попробую как то попробовать)
0
Открутить регистрацию как таковую в OPENID плагине. Оставить только логин. Как это сделать культурно (т.е. не банальным варварским способом снести файло, отвечающие за регистрацию) это уже вопрос научных изысканий.
0
а где модуль? =( по ссылке 404
-1
плагины еще не адаптированы под 0.4.1 поэтому все плагины удалены пока, будут добавляться по мере их адаптации разработчиками.
+2
Что-то я не вкурил. Ставлю на LS 0.4 плагин, выложенный тут. Всё встало без проблем, плагин активировал, форма появилась. Для ВК еще надо приложение создавать, пока попробовал залогиниться с помощью своей почты на яндексе, на что получил такое сообщение:

return_to u'http://sub.site.ru/login/openid/enter/finish/?janrain_nonce=2010-06-08T20%3A38%3A20ZZiPDKH' not under trust_root u'http://sub.site.ru:81/'

Это же не должно возникать из-за того, что я тестирую на поддомене?..
-1
plugins/openid/classes/modules/openid/Openid.class.php
наиная со строки 165
protected function getTrustRoot() {
		return preg_replace('#^(\w+\://[^/]+/)(.*)$#', '\1', Config::Get('path.root.web').'/');
	/*	return sprintf("%s://%s:%s%s/",
			$this->getScheme(), $_SERVER['SERVER_NAME'],
			$_SERVER['SERVER_PORT'],
		'');*/
	}
0
а где можно почитать или получить пояснение по решению этой проблемы в варианте не для кодеров?
заранее благодарен
0
косяк в коде, поэтому решать его правкой кода.

не вижу вообще логики использования SERVER_NAME заместо HTTP_HOST
0
я понял
просто хотелось именно инструкции, где чего поправить для ламеров=)
0
Скажите пожалуйста: когда юзер авторизуется через ВКонтакте или OpenID таким способом, как в этом плагине сделано, какая-нибудь информация о нём остаётся на сайте? Почта, имя пользователя? Уведомление по почте можно сделать такому пользователю? или они как незарегистрированные получается, но с правом комментирования. так что-ли?
+1
Создаётся новый пользователь, из вконтакте берётся только id
Скоро ожидать поддержку для 0.4.1?
0
Плагин обновился, теперь он работает на LiveStreet 0.4.1
+4
  • avatar
  • ort
  • 14 июня 2010, 18:44
Люди, кто может и понимает! Доделайте кто-нибудь к плагину регистрацию с фейсбука, я профинансирую, в разумных пределах конечно.
+1
начнем делать в 21го
0
отлично! ждем!
0
Выше всяких похвал )))
Очень хотелось бы использовать данную возможность и на версии 0.3.1.
0
скоро будем делать
0
при нажатии «вконтакте» выходит -> Open API security breach
0
Вы вообще инструкцию читаете!? Нужно ключ api и id приложения ввести и всё заработает!
+1
спасибо за напоминание
0
Поставил. При попытке зайти под всем кроме вконтекте выдаёт:
Fatal error: No XML parser was found in /var/www/seductionby/data/www/master.seduction.by/plugins/openid/classes/lib/external/php-openid-2.1.3/Auth/Yadis/XML.php  on line 366

вконтакте всё отлично.

может кто сталкивался. Сайт на поддомене может в этом проблема.
0
в вашем php нет поддержки любой из 2х библиотек: domxml, dom
необходимо установить.
0
Мне помогло включение библиотек xmlreader.so и dom.so
0
При попытке зайти используя OpenID выпадает ошибка
«Ошибка: Server denied check_authentication». Может я базу не в том формате указал?

$config['table']['openid'] = 'u231179_site.livestreet_openid';
$config['table']['openid_tmp'] = 'u231179_site.livestreet_openid';


Кроме этой части конфига для входа по простому OpenID что-либо нужно?

$config['file_store']   = '___sys.cache.dir___php_consumer_livestreet'; // каталог для хранения данных OpenID

А тут что указывать? Или путь оставлять как есть?
0
возможно это поможет:
If you keep getting server authentication failed, please update your server's CA certificates.
For openssl, you can get an updated CA bundle here curl.haxx.se/ca/cacert.pem
0
При попытке авторизации через вконтакте происходит следующее:

Те получается что пользователь залогинился вконтакте а на сайт не вошел.
Что я сделал не правильно? :)
+1
на сайте livestreet.ru такое повторяется?
+1
На livestreet.ru все отлично работает.
0
Всё работает кроме контактов. Сделал приложение, получил ID, ключ. пытаюсь править config.php — всё к чертям. Ошибки. Причем при любом изменении конфигов — ошибки. Мож я чо не так. В мануале вроде всё ясно прописано, но черт возьми где я косячу не пойму. Подскажите поподробней комрады…
0
работает опенади только вконтакте(создал приложение)

остальные нет, нужно еще что то прописывать?
0
При попытке войти по OpenID выдает «Невалидный ключ OpenID авторизации» (gmail аккаунт). На сайте LS этот же аккаунт работает на ура. В чем может быть причина? Версия LS 0.4.2.
0
Я понял, скорее всего дело в отсутствии cURL.
0
Возможно ли к данному плагину докрутить авторизацию через Твиттер аккаунт? Было бы очень здорово иметь такую возможность ))
0
Присойденяюсь к provolod

Хотелось бы добавить твиттер и фейсбук и жж.
0
Курю vkontakte.ru/pages.php?o=-1&p=Open%20API
Для использования обычной инициалиазации необходимо добавить следующий блок кода внутри тега:

внутри какого тега-то? :) ощущение что название тега упущено…
0
попробовал разные варианты, smarty ругается
0
{literal} ... {/literal}
0
использование OPenID позволяет обойти регистрацию по приглашениям
0
  • avatar
  • gto
  • 17 августа 2010, 15:47
Отключите плагин, регистрация по приглашениям и плагин OPenID это вообщем-то несовместимые вещи.
+1
Как сделать чтобы по умолчанию на странице /login/openid/enter/ активное поле ввода было не для openid, а для вконтакте.
то есть нужно переместить из под надписи «Пользуетесь одним из сервисов?» «Вконтакте» с нижнего правого угла «наверх», а на его место поставить openid

Спасибо заранее!!!
0
это где-то в шаблоне, но я точно не знаю
0
возможно в openid.tpl, но я не силён в языках.
сообщество, полагаюсь на вашу помощь!!!
0
А не планировали facebook еще добавить в этот plugin?
0
  • avatar
  • vt13
  • 27 августа 2010, 13:26
При включенной регистрации по приглашениях плагин позволяет регистрироваться через OpenID без приглашения.
Как исправить?
-1
прочитать комментарии к теме, например
0
Тут уже обсуждалось это. При включенным OpenID приглашения теряют всякий смысл.
0
У меня такой вопрос — как сделать возможность, будучи авторизованным на сайте на livestreet заходить через OpenID на другие сайты? В частности интересует авторизация в ЖЖ. Кто сможет доработать плагин? Или как его можно самому настроить?
0
если я правильно вас понял, вам нужен openID сервер, это не допиливать надо, это писать с нуля совершенно другая штуковина
0
Просто для вордпресса например есть такие плагины. я подумал, может и этот плагин имеет такую возможность, но у меня что то не работает. Ну ладно. спасибо за информацию, сейчас создам отдельный топик ))
0
авторизацию от mail.ru кто-нибудь прикручивал?
0
Нужна помощь в установке плагина!
0
А в чем собственно проблема? Копируем на хостинг, запускаем через админку. Радуемся.
0
рамблер нафиг не нужен :)
я оставил яшу, гугл и вконт

а вот твиттор и фэйсбук не помешали бы ;)
0
Да, что-то заглохла доработка плагина для авторизации через facebook, ну и твиттер если что. идет массовая миграция полово- и умозрелого пользователя на фейсбук…
0
Добавил на этот сайт поддержку facebook, можно потестировать
0
  • avatar
  • ort
  • 29 сентября 2010, 11:53
Макс, а ФБ передает только то, что действительно есть я на ФБ или можно получить еще имя, фотку профиля, город, страну если есть?
0
можно получить, но пока этого в плагине не будет
добавил поддержку twitter
0
  • avatar
  • ort
  • 29 сентября 2010, 16:11
то есть скоро можно ждать обновление плагина?
0
с удовольствием бы потестировали. где скачать можно? в версии, что висит на сайте этого пока нет.
0
рамблер нафиг не нужен
Не скажи. У меня более 15% всех авторизаций через него. Раньше на Рамблере почтовые ящики весьма охотно заводили.
0
А как просмотреть данную инфу у себя на сайте? кто от куда авторизовался?
0
Обновление плагина — livestreet.ru/blog/addons/5458.html
+1
  • avatar
  • ort
  • 30 сентября 2010, 10:29
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.