[Решено] Регистрация/авторизация через социальные сети и сервисы (OpenID)

Прислано: smirnoff

пн, 03/10/2011 - 10:03

Нужен модуль регистрации/авторизации через социальные сети.
 Loginza не подходит.
В Loginza есть проблемы (читаем тут http://www.drupal.ru/node/45330): пользователь по сути не создается, и он не может полноценно работать с сайтом. К тому же, нужно отказаться от используемого метода кэширования.
На моем сайте нет логинов, вся регистрация/авторизация проходит по email/пароль (через модуль  Email registration). То есть, необходимо согласование с этим модулем.

Вопрос по темизация блока входа, учитывая OpenID

Прислано: vicshine

чт, 25/08/2011 - 07:18

Приветствую! Вопрос, деликатный, про OpenID ;)

Есть D7 с затемизированным блоком block--user--login.tpl.php:

<div id="block-<?php print $block->module .'-'. $block->delta ?>" class="<?php print $classes; ?> clearfix"<?php print $attributes; ?>>
  <div class="block-inner">
 
      <?php print render($title_prefix); ?>
    <?php if ($block->subject): ?>
      <h2 class="block-title"<?php print $title_attributes; ?>><?php print $block->subject ?></h2>
    <?php endif;?>
      <?php print render($title_suffix); ?>
 
		<div class="content" <?php print $content_attributes; ?>>
 
<form id="user-login-form" accept-charset="UTF-8" method="post" action="#">
 
<div class="name">
 
<div class="lable"><label for="edit-name"><span class="form-required" title="Обязательно для заполнения.">*</span> Логин: </label></div>
<div class="input"><input id="edit-name" class="form-text required" type="text" maxlength="30" size="25" value="" name="name"></div>
 
</div>
 
<div class="pass">
 
<div class="lable"><label for="edit-pass"><span class="form-required" title="Обязательно для заполнения.">*</span> Пароль: </label></div>
<div class="input"><input id="edit-pass" class="form-text required" type="password" maxlength="30" size="25" name="pass"></div>
 
</div>
 
<div class="clear"></div>
 
<div class="form-button">
<input type="hidden" value="form-ktM6B8NJzVo7qkKO7nVaRukEU99KAz0HPB2jE7JPjzU" name="form_build_id">
<input type="hidden" value="user_login_block" name="form_id">
 
<div id="edit-actions" class="form-actions form-wrapper">

Ошибка с /tmp

Прислано: Vitaliyva

чт, 24/03/2011 - 20:35

Прошу подсказать, почему-то в отчетах выдает ошибку:
* Warning: is_writable() [function.is-writable]: open_basedir restriction in effect. File(/tmp) is not within the allowed path(s): (/home/u51793/) in system_requirements() (line 335 of /home/u51793/grajdanskoe-obschestvo.ru/www/modules/system/system.install).

Еще вопрос по поводу openid: указываю в окошке "Log in using OpenID" свой openid, полученный по адресу:
http://openid.yandex.ru/
по окончанию процедуры все равно оказываюсь на своем сайте не авторизован?

openID

Прислано: Намор

сб, 05/03/2011 - 23:16

Здравствуйте обьясните пожалуста как это понять (Позволяет входить на ваш сайт по OpenID.) Спасибо.

Продвинутое управление комментированием

Прислано: HellSmith

чт, 03/03/2011 - 11:46

Другие статьи по теме:

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

Какие модули нужно ставить? Для первого я продовал OpenID Selector, однако нормальной работы с анонимными комментариями под OpenID так и не добился.

Работа: разработка и установка модуля логина через openid/одноклассники/вконтакт

Прислано: larin

ср, 12/01/2011 - 06:09

Другие статьи по теме:

Для библиотеки lib.rus.ec требуется модуль логина через openid и прочие вконтакты и однокамерники.

Требования:
1. Общее всплывающее окно логина/регистрации:
--------------------------------------
username/mail
password [ ](скрывать пароль) (чекбокс: по умолчанию выключен, пароль виден, состояние хранится в куке)
<войти> <зарегистрироваться>
openid <список провайдеров>
<войти>
[ ] (временный вход)
---------------------------------------
2. Если username/password не заполнен, то кнопки <войти> и <зарегистрироваться> не нажимаются.
3. Если не нажат временный вход (по умолчанию), то включается модуль persistent_login (лучще скопировать его логику, а сам модуль выкинуть).
4. Если нажато зарегистрироваться, то создаётся юзер с указанным username/password. Если такой уже есть и пароль правильный, то молча логинимся в него.
5 При регистрации на username стандартные ограничения + не могут быть только числа, должна быть хоть одна буква, на пароль никаких.
6. При регистрации высылается письмо, в независимости от его получения человек считается зарегистрированным и залогинненым. Если майл не указан или не подтверждён, то он получает спец роль. В любой момент он может изменить свой майл в профиле и запросить письмо подтверждение. См. модуль logintoboggan.
7. Если нажато войти, а юзера такого нет, то предложить создать или ввести правильное имя.
8. Работа под всеми браузерами, деградация для не умеющих js до чего-то разумного.

Непонятные проверки в модуле OpenID

Прислано: pamir

вт, 11/01/2011 - 12:08

Включил модуль OpenID.
Столкнулся со следующей неприятностью - через яндекс авторизация проходит, через mail.ru - нет. Получаю ошибку в журнале: Nonce received from http://openid.mail.ru/login is out of range (time difference: -10799s). Check possible clock skew.

Стал разбираться. В модуле идёт следующая проверка:
function openid_verify_assertion_nonce($service, $response) {
...
...

$time = time();
$expiry = 900;
if ($nonce_timestamp <= $time - $expiry || $nonce_timestamp >= $time + $expiry) {
watchdog('openid', 'Nonce received from @endpoint is out of range (time difference: @intervals). Check possible clock skew.', array('@endpoint' => $service['uri'], '@interval' => $time - $nonce_timestamp), WATCHDOG_WARNING);
return FALSE;
}

Т.е. проверяется, чтобы время ответа было в рамках 900 секунд от текущего времени.

При этом яндекс возвращает, судя по всему, время в GMT, а mail.ru в UTC (текущее наше).
А функция time() возвращает время в GMT (если я не ошибаюсь)

Поискал документацию по OpenID, там сказано, что в openid.response_nonce должно лежать время в UTC (что несколько странно, потому что сервера авторизации могут находиться где угодно и как стыковаться с сервером, делающим запрос - не понятно).

openid.response_nonce

портал - OpenID для связывания разных скриптов внутри домена

Прислано: sda0@drupal.org

пт, 02/07/2010 - 07:14

Другие статьи по теме:

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

решение - что если использовать open ID для вместо того чтобы писать все на одном движке?

как это правильно реализовать?

Модуль авторизации Loginza

Прислано: Обухов Никита

вс, 23/05/2010 - 10:00

Всем привет!

Выкладываю первую версию модуля авторизации с помощью Loginza.ru

Поддерживаемые провайдеры: http://loginza.ru/features-and-benefits?sid=ca42687a5ba7454a097e022152e6...

Сразу после установки добавится роль Loginza User. Ей можно назначить нужные права. На странице admin/settings/loginza можете поставить галочки, где в комментариях надо выводить иконку провайдера.

УСТАНОВКА:

В файл settings.php вставьте:
$conf['cache_inc'] = 'sites/all/modules/loginza/cache.inc'; // путь к модулю

ВАЖНО:

Так как модуль создавался для комментирования анонимами, то полноценной авторизации не происходит. Юзер, залогиненный таким макаром, остается Гостем, но с отключенным кэшированием страниц и с ролью Loginza User.

Поэтому: если вы используете свой собственный обработчик кэша ($conf['cache_inc']), отличный от ./includes/cache.inc, вам надо внести в него изменения (см. cache.inc в модуле).

OpenID игнорирует обяз. поля при авторизации?

Прислано: AndreyY

чт, 21/01/2010 - 15:49

Другие статьи по теме:

Включил OpenID. Работает. Но теперь получается, что при регистрации пользователя по OpenID для него автоматически создается учетная запись в друпале, а дополнительные обязательные поля в форме регистрации такие, как телефон, место работы и т.д. - он может не заполнять.....;-(
Я что-то неправильно сделал?

P.S. Так же получается, что Terms & Conditions, которые требовались прочитать и поставить checkbox перед регистрацией тоже в игнор пойдут.

Drupal.ru VS myopenid.com

Прислано: fasdalf@fasdalf.ru

пт, 23/10/2009 - 13:19

Модуль OpenID всё ещё включен на drupal.ru
Однако в блоке входа на сайт OpenID не участвует.
На q?=user OpenID принимают, но http://fasdalf.myopenid.com/ не прокатывает. После редиректа с myopenid.com на drupal.ru снова вижу поля для имени и пароля.

Неоднократно сталкивался с таким у себя. Пришлось вырубить OpenID - других решений или способов воспроизведения не нашлось.

Drupal обзавелся поддержкой FaceBook Connect и других систем авторизации

Прислано: Химический Али

вт, 28/07/2009 - 07:56

Больше социальности! Теперь сайты на Drupal могут аутентифицировать посетителей с помощью таких стандартов авторизации, как Facebook Connect, MySpace ID, Twitter, а также с помощью почтовых OpenID-провайдеров (Google, Yahoo, и AOL). Функциональность обеспечивает модуль под названием Socialize разработки Gigya и Acquia.

Помимо авторизации, модуль включает в себя возможности оп «пушингу» (обмену) контента между социальными сетями, обновлению социальных статусов и т.п.

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

Для работы модуля требуется Popups API и аккаунт на Gigya Socialize. Кроме того, горячо рекомендуется Trigger для совершения тех или иных процедур при определенных действиях пользователей.

Страница проекта: http://drupal.org/project/gigya

Не хочет логинеться через openID

Прислано: Yegor

ср, 01/07/2009 - 04:15

Другие статьи по теме:

На сайте стоит openID - доступ, на локали нормально логинется, а вот на хосте не хочет. Немного порывшись в коде заметил, что после аторизации на сервере openId (в моем случает myopenid.com) данные о регистрации не сохраняются в сессии. То есть на локали переменная $_SERVER не пустая, на хосте - пустая.

Может ли проблема заключаться в этом? Для проверки попробовал на локали ставить в openid.module в самую верхушку код

<?php unset($_SESSION?>

В результате и на локали не коннектится. И симптомы те же.

PS На локали php ver 5.2.4 на хосте 5.2.6

OpenID в форме комментирования

Прислано: ii

вс, 26/04/2009 - 11:45

Как добавить поле OpenID в форме комментирования для неавторизированных посетителей?

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

Прислано: seaji

пт, 27/03/2009 - 23:02

Другие статьи по теме:

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

RSS-материал

Новое на сайте

Ссылки партнёров