Авторизация через социальные сервисы

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Аватара пользователя
xoma
Сообщения: 641
Зарегистрирован: 2009.04.02, 15:24
Откуда: Ногинск
Контактная информация:

Авторизация через социальные сервисы

Сообщение xoma »

Всем привет!

Я вот тут http://www.yiiframework.ru/forum/viewto ... 740#p17660 поднимал тему про авторизацию через Twitter, FaceBook, ВКонтакте, ответа от автора топика, к сожалению, так и не поступило.

Решил завести отдельный топик.

Может кто-то делал что-то подобное ? Или может есть какие-то наработки ?

Если не жалко - поделитесь опытом (и кодом), сообща "допилим" и превратим в работающие компоненты.

p.s. логинзу я не рассматриваю, так как кроме собственно авторизации в этих сервисах, еще необходимо использовать их особенности (отправка твитов, сообщений и т.д.), т.е. авторизция для каждого из сервисов должна быть "родная".
Аватара пользователя
slavcodev
Сообщения: 3134
Зарегистрирован: 2009.04.02, 21:42
Откуда: Valencia
Контактная информация:

Re: Авторизация через социальные сервисы

Сообщение slavcodev »

У меня есть в текущем ТЗ, авторизация через соц сети.
Жду Yii 3!
Аватара пользователя
slavcodev
Сообщения: 3134
Зарегистрирован: 2009.04.02, 21:42
Откуда: Valencia
Контактная информация:

Re: Авторизация через социальные сервисы

Сообщение slavcodev »

вот тут где можно глянуть драфт.
Но предупреждаю там можно заблудится.
Жду Yii 3!
Аватара пользователя
xoma
Сообщения: 641
Зарегистрирован: 2009.04.02, 15:24
Откуда: Ногинск
Контактная информация:

Re: Авторизация через социальные сервисы

Сообщение xoma »

а можешь меня носом ткнуть, где там авторизация через ВКонтакте, например....я что-то не нашел =(
Аватара пользователя
BuCeFaL
Сообщения: 447
Зарегистрирован: 2010.03.17, 21:22
Откуда: Kiev
Контактная информация:

Re: Авторизация через социальные сервисы

Сообщение BuCeFaL »

Хороший компоненты вышел бы. За основу можно, было бы, взять UserIdentity и у него как один из параметров stat объект с специфическими возможностями соц сетей.
Ex.:

Код: Выделить всё

Yii::app()->user->twitt->send('SomeText');
YiI::app()->user->vk->getFriendList();
 
Важна реализация межинга, тесть, если пользователь зарегистрирован в нескольких сервисах сразу. Ну и конечно же git или hg общий, желательно с багтреком.
Аватара пользователя
slavcodev
Сообщения: 3134
Зарегистрирован: 2009.04.02, 21:42
Откуда: Valencia
Контактная информация:

Re: Авторизация через социальные сервисы

Сообщение slavcodev »

xoma писал(а):а можешь меня носом ткнуть, где там авторизация через ВКонтакте, например....я что-то не нашел =(
нет, еще модели, руки не дошли
для каждого типа авторизации я планировал делать собственную модель, с обязательными методами
Жду Yii 3!
Аватара пользователя
slavcodev
Сообщения: 3134
Зарегистрирован: 2009.04.02, 21:42
Откуда: Valencia
Контактная информация:

Re: Авторизация через социальные сервисы

Сообщение slavcodev »

BuCeFaL писал(а):За основу можно, было бы, взять UserIdentity и у него как один из параметров stat объект с специфическими возможностями соц сетей.
Я решил что это дело модели а не Identity, т.е.

Код: Выделить всё

Yii::app()->getUser()->getModel()->getFriendList(); 
Жду Yii 3!
Аватара пользователя
xoma
Сообщения: 641
Зарегистрирован: 2009.04.02, 15:24
Откуда: Ногинск
Контактная информация:

Re: Авторизация через социальные сервисы

Сообщение xoma »

Общий репозиторий - не проблема, сделаем запросто (тем более, что уже есть - yiiext)

Если есть интерес, давайте для начала обсудим как это более правильно сделать. Вот уже есть два варианта UserIdentity или как модель.

Я для себя представлял, что это будет 3 независимых компонента, которые можно использовать независимо друг от друга (ну вот вдруг мне нужна авторизация только для VK).

Кроме того, если по твиттеру и по фейсбуку уже есть готовые php-классы (по сути останется сделать только обертку для них), то для VK я не нашел ничего похожего (может плохо искал ?),

если у кого-то есть информация - поделитесь.

да забыл:

Facebook php-sdk https://github.com/facebook/php-sdk

Twitter php API http://dev.twitter.com/pages/libraries#php (что из них подойдет - не знаю, нужно выбирать)
Аватара пользователя
xoma
Сообщения: 641
Зарегистрирован: 2009.04.02, 15:24
Откуда: Ногинск
Контактная информация:

Re: Авторизация через социальные сервисы

Сообщение xoma »

Я тут подумал, что скорее всего необходимо для начала сделать базовую авторизацию по oauth для Yii, так как этот протокол использует не только фейсбук и товарищи, но и яндекс и меил.ру

После того как такой классик будет на его основе можно уже делать адаптеры для конкретных социальных сетей. Есть какие-то идеи?

http://php.net/manual/en/book.oauth.php

Вот еще что нашел:

http://www.yiiframework.com/extension/eoauth/ кто-то использовал ?
Nihisil
Сообщения: 118
Зарегистрирован: 2010.08.05, 06:39

Re: Авторизация через социальные сервисы

Сообщение Nihisil »

Да, собрать все в кучу хорошая идея. Тема популярна, и не гоже каждому писать свой велосипед.
Аватара пользователя
xoma
Сообщения: 641
Зарегистрирован: 2009.04.02, 15:24
Откуда: Ногинск
Контактная информация:

Re: Авторизация через социальные сервисы

Сообщение xoma »

Сделал черновой вариант авторизации через фейсбук, если есть желающие - прошу потестировать http://yupe.ru/login

Пока выполнено в виде "лапшекода", но кажется, работает. В скором времени будет, аналогичное для ВК, а уже после возьмусь за "причесывание" и разбивку на компоненты
Аватара пользователя
kosenka
Сообщения: 677
Зарегистрирован: 2009.09.26, 12:41
Откуда: москва
Контактная информация:

Re: Авторизация через социальные сервисы

Сообщение kosenka »

xoma писал(а):Сделал черновой вариант авторизации через фейсбук, если есть желающие - прошу потестировать http://yupe.ru/login
При авторизации произошла ошибка!User не содержит метода "hasErros".
Аватара пользователя
xoma
Сообщения: 641
Зарегистрирован: 2009.04.02, 15:24
Откуда: Ногинск
Контактная информация:

Re: Авторизация через социальные сервисы

Сообщение xoma »

Было такое =) Уже исправлено =)
Аватара пользователя
kosenka
Сообщения: 677
Зарегистрирован: 2009.09.26, 12:41
Откуда: москва
Контактная информация:

Re: Авторизация через социальные сервисы

Сообщение kosenka »

Хм... зашел сейчас на твой сайт, мне выдалась надпись "При авторизации произошла ошибка!" и меня перекинуло на http://yupe.ru/user/account/fblogin/
А как "разлогиниться" ?
Аватара пользователя
xoma
Сообщения: 641
Зарегистрирован: 2009.04.02, 15:24
Откуда: Ногинск
Контактная информация:

Re: Авторизация через социальные сервисы

Сообщение xoma »

Да есть глюки с редиректами....борюсь с ними =) Для выхода - перейди на http://yupe.ru/ там будет кнопка "Выход"...


Хотя твоя учетная запись не создалась, видимо что-то переглючило в процессе =(
Аватара пользователя
kosenka
Сообщения: 677
Зарегистрирован: 2009.09.26, 12:41
Откуда: москва
Контактная информация:

Re: Авторизация через социальные сервисы

Сообщение kosenka »

xoma писал(а):Да есть глюки с редиректами....борюсь с ними =) Для выхода - перейди на http://yupe.ru/ там будет кнопка "Выход"...
Зашел, кнопки нету, а есть надпись "При авторизации произошла ошибка!"
Вложения
Юпи!_1303992544757.png
Юпи!_1303992544757.png (12.19 КБ) 7629 просмотров
Аватара пользователя
xoma
Сообщения: 641
Зарегистрирован: 2009.04.02, 15:24
Откуда: Ногинск
Контактная информация:

Re: Авторизация через социальные сервисы

Сообщение xoma »

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

p.s. спасибо за помощь =)
Аватара пользователя
kosenka
Сообщения: 677
Зарегистрирован: 2009.09.26, 12:41
Откуда: москва
Контактная информация:

Re: Авторизация через социальные сервисы

Сообщение kosenka »

xoma писал(а): учетка не создается для тебя....оч странно....сейчас попробую добавить отладочные сообщения...
может потому, что я "отказал" в авторизации на фейсбуке
xoma писал(а):p.s. спасибо за помощь =)
да не за что, готов дальше помогать :)
Аватара пользователя
xoma
Сообщения: 641
Зарегистрирован: 2009.04.02, 15:24
Откуда: Ногинск
Контактная информация:

Re: Авторизация через социальные сервисы

Сообщение xoma »

Да, скорее всего из-за отказа...

Я добавил логирование параметров, если будет возможность - попробуй еще разок, только разреши авторизацию =)
Ответить