Рейтинг: 0  
На голосовании
Предложил Tarasov Igor 13.02.2018 17:24:47

Сделать поле login в таблице пользователей уникальным

Столкнулись с проблемой. Сделали авторизацию на сайте по email адресу, а не по логину.
Зарегали пользователя с логином и мылом test@test.ru
Подключили авторизацию через соцсети. Решили зайти на сайт через ВК, где тоже стоит почта test@test.ru
В результате получили дублирование пользователей как по логину, так и мылу.
Т.е. получили два абсолютно одинаковых пользователя в системе, разные у них только ID
Получается ни на уровне кода, ни на уровне БД не проверяется должным образом уникальность пользователей по полям login и email. Пришлось решать проблему костылями.


Как ни странно в битриксе такое за ошибку не считают:
"Такое может быть и это не является ошибкой. Уникальность проверяется только для внутренних пользователей сайта, которыми не являются пользователи, авторизованные через соц. сети. "
Рейтинг: 0.8902  
На голосовании
Предложил Малиновский Александр 26.01.2018 12:07:34

События авторизации через соцсети

добрый день.

Решил воспользоваться модулем "социальные сервисы".
как известно, при авторизации на сайте через соцсеть, на сайте создается новый пользователь, если ранее не создан, на основании полей, передаваемых из соцсети.
Бывает, что на сайте заданы пользовательские поля для USER , которые могут быть обязательными к заполнению.
Естественно, соцсеть такие поля не возвращает. И вместо успешной авторизации мы получаем сообщение об ошибке. Хорошо бы перед регистрацией пользователя из соцсети использовать обработчик события, в котором мы бы в init.php заполнили недостающие поля.

но как выяснилось, в системе нет обработчика "перед регистрацией пользователя через соцсеть". по крайней мере, я не нашел.

создал такой обработчик  OnBeforeSocServUserAdd:

foreach(GetModuleEvents("socialservices", "OnBeforeSocServUserAdd", true) as $arEvent) {
    ExecuteModuleEventEx($arEvent, array(&$userFields));
}

вставил этот код в /bitrix/modules/socialservices/classes/general/authmanager.php
перед кодом
$USER_ID = $USER->Add($userFields);
в строке 1345
Рейтинг: 3.8829  
На голосовании
Предложил Рыков Иван 01.04.2015 13:16:20

Авторизация через соц сети

Столкнулись с такой моментом

Пользователь может просто зарегистрироваться на сайте и авторизоваться через соц сеть

На сайте стоит проверка на уникальность email'a.
В случае если такой email уже есть на сайте, а затем пользователь авторизуется/регистрируется через соц сеть, то спокойно создается второй аккаунт с такой же почтой.

Было бы не плохо избежать данного бага и при наличии пользователя с такое же почтой привязывать его к уже существующему аккаунту
Рейтинг: 4.2266  
Новая
Предложил Кубагишев Сергей 05.05.2013 12:18:55

"Видеозвонок" контактам Корпоративного портала, указавшим в личных данных свою страницу в Google+

Многие пользователи 1С Битрикс Корпоративный портал знают, что в личных данных пользователя есть кнопка "Видеозвонок", которая почти не используется, по причине дороговизны услуг провайдера услуг видеоконференцсвязи, который, по видимому, является партнером Битрикс.

Идея: для увеличения интегративности системы Битрикс Корпортал нужно сделать, чтобы при нажатии на кнопку "Видеозвонок" в строке конкретного пользователя, автоматически загружалась страница Google Hangouts (Видеовстречи) данного пользователя.





Для того, чтобы видео вызов пользователя в Google+ пошел автоматически, нужно чтобы он указал в личном профиле свою страницу в данной социальной сети. Также нужно чтобы в настройках модуля Битрикс "Социальная сеть" была возможность отключать/включать возможность совершать видеозвонки пользователю в Гугл+.

Есть пословица: что не можешь реализовать сам, на это ссылайся (делай ссылку, интегрируй).

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

Представьте, люди будут иметь автоматическую возможность звонить друг-другу прямо из Битрикс Корпоративный портал и уже в Гугл+ добавлять людей для коллективной БЕСПЛАТНОЙ видео конференции, пусть и количеством, до 10 человек.

На мой взгляд, кроме пользы - вреда никакого! Такое решение сделает 1С Битрикс Корпоративный портал еще более социальным, что соответствует модной тенденции обращения даже Интранет решений в сторону социальных сетей.
Рейтинг: 14.6986  
На голосовании
Предложил Кирилл Попов 31.05.2012 12:17:02

Социальные сервисы - фото и другие поля

Предлагаю добавить в настройки модуля "Социальные сервисы" опции с помощю которых можно будет управлять какие поля подгружать при авторизации через соцсети. Сейчас например не подгружается фото, а оно очень многим нужно.
Рейтинг: 81.5709  
На голосовании
Предложил Самойленко Юрий 17.02.2012 17:50:47

Единая учетная запись пользователя с привязкой к аккаунтам социальных сервисов (OpenID и прочее)

Не придумал, как укоротить заголовок, чтобы было понятно :)
Нужна возможность связывать профили в различных социальных сервисах с профилем пользователя на сайте, чтобы он получал возможность авторизовываться через любые сервисы, связанные с его профилем, равно как и с помощью формы авторизации на сайте, имея единую учетную запись.
При использовании авторизации пользователей через социальные сервисы возникает следующая проблема. При авторизации впервые создается запись пользователя, причем если от сервиса не пришли некоторые данные (Имя, Email), то эти обязательные поля остаются незаполненными.
Пользователь все же в личном кабинете может задать значения этих полей, установить пароль, но авторизоваться через стандартную форму авторизации он не сможет, не зная логин (который может хранится в этом случае, например, так: openid.yandex.ru/login). Т.е. остается только возможность входить на сайт через выбраный при первом входе социальный сервис. В любом другом случае (регистрация, вход через другой сервис) у пользователя на сайте появляется еще один профиль.
Пример очень удачной реализации связки профилей - тут.
И заодно стоило бы при авторизации через соц. сервисы давать возможность забирать фотографию пользователя.
Рейтинг: 26.1219  
На голосовании
Предложил ThinkUP 03.02.2012 11:26:20

Авторизация через соц. сервис Одноклассники

Коллеги, приветствую всех! Поддержите в начинании ) думаю будет востребовано.Идея очень проста: добавить в модуль Социальные сервисы возможность интеграции сайта с соц. сетью Одноклассники с целью авторизации через него... На сколько я помню, сразу не сделали потому, что одноклассники такого сервиса не предоставляли. Сейчас не хочется свои костыли лепить, хорошо, если будет в коробке, как положено. Написал в суппорт, передали мое пожелание в разработку, но посоветовали обсудить здесь! Так вот - если здесь народ поддержит, то сделают быстрее гораздо!
Просьба поддержать идею, думаю многим пригодится!
Рейтинг: 46.305  
Внедрено
Предложил Зайковский Василий 06.01.2012 07:49:15

Социальные сервисы

Добавить авторизацию через "Одноклассники"