Универсальные логины и авторизация в ICMS 2 v.6 – открытое тестирование

+32
5.21K
Ура, товарищи! То, чего так долго ждали большевики — случилось! Товарищ Fuze дал добро на внедрение универсальных логинов и авторизации в ближайший релиз (мажорный или минорный — это ему виднее). 😊 Я перенёс прошлую версию "Логинов" на InstantCMS 2.6.0 и походу поправил пару незамеченных ранее мелочей. Изменено более сотни файлов. Поэтому нужна ваша активная помощь в тестировании.

Возможности:
— авторизация по любому полю профиля пользователя (универсальные "логины");
— список запрещённых для регистрации логинов;
— подстановка любого поля профиля в адреса профилей пользователей;
— наглядный показ пользователю будущего адреса его страницы при регистрации и редактировании профиля;
— управление разрешением изменения логинов пользователями;
— опция проверки полей профиля по регулярному выражению;
— уникальные никнеймы;
— галка согласия с правилами сайта при регистрации и ссылка на правила;
— подстановка "логина" в адреса материалов сайта (в настройках типов контента);
— новые колонки в таблице пользователей в Админке (поле для авторизации и адрес профиля);
— и другие интересности.

Иллюстрация

Предупреждение:

Данный вариант НЕ ПРЕДНАЗНАЧЕН для использования в реальных проектах.
Он выложен тут ТОЛЬКО ДЛЯ ТЕСТИРОВАНИЯ.


Возможности, настройки и примеры использования

Функционал этой версии полностью совпадает с предыдущей. Поэтому полное описание возможностей и настроек, а также примеры использования смотрите в "Логины в ICMS 2 v.5 – открытое тестирование".

Как тестировать

Поставьте чистую 2.6.0 с демо-данными. Накатите установочный пакет "Логинов". На странице «Установка завершена» может быть показано предупреждение о неопределённом свойстве класса (Notice: Undefined property: cmsUser::$slug ...) – это нормально, не обращайте внимание, страница готовится старым фронтендом, а собирается уже обновлённым шаблоном.
А далее пробуйте разные варианты по инструкциям выше. В каждом из них проверьте работу всех возможностей, описанных в начале поста.

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

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

По наводке Нико исправил ошибку 404 перенаправления на страницу пользователя при добавлении в друзья и удалении из друзей.
Скачать обновлённый пакет установки версии 0.6.260.1

Спасибо за помощь!

+2
Игорь ФИН Игорь ФИН 5 лет назад #
Подумаешь логин такой или такой , или мобильник в качестве логина.
А вот кто знает как можно решить вот эту задачу, которая даже здесь не решена.
Есть несколько сайтов с одной базой пользователей как тут
1) http://instantcms.ru/
2) http://addons.instantcms.ru/
на каждом сайте приходится логинется, для входа
Как сделать так чтобы логинясь на 1 или 2 на следующем сайте ненужно было логинется?
+6
Олег Васильевич я Олег Васильевич я 5 лет назад #
Подумаешь...
А подумать перед тем как оглашать свои хотелки, будут ли они к месту не стоит?
0
Игорь ФИН Игорь ФИН 5 лет назад #
оглашу и дальше,
Мне разработки на этом проекте постоянно напоминают среднюю температуру по моргу , даже не по больнице.
а теперь конкретика.
1) замена E-mail на "подстановка любого поля профиля в адреса профилей пользователей"
то есть берем поле телефон и ставим его в качестве логина.
Что E-mal что телефон однофигствено ( набор знаков - помидоры не кидать).
А вот дальше начинается самое интересное.
1) Можно ли восстановить пароль при помощи телефона?
2) Можно ли настроить систему так чтобы регистрация и авторизация проходила только по телефону ( в том числе и восстановление через SMS)
но это вчерашний день
У меня на столе лежит моя флешка с цифровой подписью, я уже видел примеры авторизации ( забугром) при помощи цифровой подписи.
но я думаю что к такому решению тут подойдут только лет через 10.
Я пошел отдыхать , от помидоров буду отбиваться завтра.
-1
Игорь ФИН Игорь ФИН 5 лет назад #
напоминают среднюю температуру по моргу
Но это не относится к тому же видео компоненту. hoho
+4
WebMan WebMan 5 лет назад #
2) Можно ли настроить систему так чтобы регистрация и авторизация проходила только по телефону ( в том числе и восстановление через SMS)
Можно. Для этого в системе есть хуки. Вы можете сами написать или заказать экшены для их обработки и любых действий по рассылке СМС с кодами подтверждения через сторонние сервисы.
1) Можно ли восстановить пароль при помощи телефона?
На данный момент такого хука в системе нет. Но его добавление - это 1 строка. А далее идёте по пути для п. 2.

Доработка "Универсальные логины и авторизация" как раз и позволяет использовать для авторизации номер телефона (или любое другое поле) и делать по нему нужные действия.

я уже видел примеры авторизации ( забугром) при помощи цифровой подписи
Это редкие, в основном коммерческие сайты крупных финансовых компаний или государственных учреждений. Когда Ваши личные проекты дорастут до необходимости в авторизации через цифровые подписи, отпечатки пальцев и т.п., тогда у Вас явно хватит финансов оплатить подключение сторонних модулей для расширения авторизации в Инстант. Аналогично и для больших коммерческих проектов, где такая необходимость может возникнуть уже сейчас - у них запланированы деньги для заказа нужных модулей. А там, глядишь, и Троечка подтянется, со встроенной авторизацией по считанному спектру волн мозга. smile
Никто не будет делать сайт банка на Инстанте и требовать включения специфических банковских модулей "в коробку" - это было бы несколько ... странно. smile
+1
vikont vikont 5 лет назад #
Игорь ФИН:
Мне разработки на этом проекте постоянно напоминают среднюю температуру по моргу , даже не по больнице. а теперь конкретика......
Блин! В вас умер прокурор.. не меньше! Уже были бы Главным прокурором... laugh
Игорь ФИН:
Когда захотите вносить свой продукт в реестр, чтобы на нем могли делать проекты для гос контор, и поднимать хорошие деньги, и сбор на что то новое заканчиваться бы в 2 дня. Можно обратится ко мне и я в этом помогу , а можно решать вопрос решается при помощи гугла .
Это хорошее дело, но как преподнесено-о!!!! Типа локти будете кусать, такой я тут важный.... Будьте проще...
Если у вас есть возможность протолкнуть Инстант 2, так может быть надо было начать с того, что народ, есть возможность..., но для этого надо сделать вот так... и вот этак... Вот это будет разговор по людски и без "пальцев веером".. smile
0
Игорь ФИН Игорь ФИН 5 лет назад #
Некто пальцы веером не делал, надо перенести эту тему друге место ( создавайте на форуме , а я подключусь),
А то мы тут развели какой то Холивар ненужный .
+2
Олег Васильевич я Олег Васильевич я 5 лет назад #
Некто пальцы веером не делал, надо перенести эту тему друге место ( создавайте на форуме , а я подключусь), А то мы тут развели какой то Холивар ненужный .
Игорь ФИН, давайте вместе народ потешим: посоревнуемся кто больше ошибок найдёт в цитате выше. Вы создавайте тему на форуме, а я подключусь.
Спойлер
0
Idler Idler 5 лет назад #
vikont:
Если у вас есть возможность протолкнуть Инстант 2, так может быть надо было начать с того, что народ, есть возможность..., но для этого надо сделать вот так... и вот этак...
Возможность и идеи есть. Бизнес стремительно осваивает возможности промо в интернете, некоторые организации совершают продажи исключительно посредством интернета и т.п. Вот то, чего так не хватало: http://instantcms.ru/blogs/nemnogo-poleznogo/internet-magazin-dlja-instantcms2-beta-testirovanie.html. Подойдет как для одностраничников "мыльных", так и для серьезных проектов с добрым бюджетом. (Ебстественно после того как начнет функционировать импорт товаров из excelle, а лучше CSV).
Заказов куча, все хотят дешевле и резче, а это возможно - с instantCMS, вполне обосновано. Времени на настройку и дизайн уходит намного меньше по сравнению с другими CMS, благодаря удобству и "неразбросанности" файлов "выводящих" контент.
-2
Idler Idler 5 лет назад #
Предлагаю сделать авторизацию будущего - по отпечатку шоколадного глаза на мониторе, приходит смс сразу с паролем и логином... и одновременно мы заходим в фейсбук rofl
-1
Idler Idler 5 лет назад #
idler:
Предлагаю сделать авторизацию будущего - по отпечатку шоколадного глаза на мониторе, приходит смс сразу с паролем и логином... и одновременно мы заходим в фейсбук rofl
Это всего лишь небольшой сарказм... над мухослоновыми запросами авторизации... не более. Грустным персонажам типа "Пьеро" читать, темболее осмысливать - не рекомендуется. Ато от вашего пессимизма минуса вырастают. Вместо того чтобы критиковать чужие разработки - внесите правки или предложите решение.
0
DCDozer DCDozer 5 лет назад #
Предложенная вами авторизация хороша, но имеет ряд существенных недостатков. Во-первых, не подходит для тех, у кого геморой, а также для тех, кто практикует анальный секс. laugh Представляете, пукан и так болит, а тут еще кирпичный завод на полную мощность начнет работать в связи с тем, что не проходит авторизация. А во-вторых, теряем офисный планктон, поскольку не каждый сможет авторизоваться на рабочем месте. Если первый недостаток устраняется медикаментозно, то для решения второй проблемы придется наладить производство мобильных СШГ (сканер шоколадного глаза). СШГ днем и ночью с пользователем. В нужный момент подключаем его к устройству, с которого зашли на сайт, через USB-порт, либо через Bluetooth, но в этом случае СШГ нужно оснастить автономным источником питания. Можно использовать батарейки, но лучше экологически чистый генератор электроэнергии, работающий на выхлопных газах пользователя. laugh
+1
Игорь Lu Игорь Lu 5 лет назад #
Поддерживаю!
Тоже нужна была такая реализация для одного проекта.
+4
Fuze Fuze 5 лет назад #
которая даже здесь не решена.
Частично решена. Если на этом сайте вы залогинитесь с чекбоксом "запомнить", то на сайте дополнений вы тоже будете авторизованы.
Подумаешь
И вам спасибо за вопрос. Обязательно разберемся и доложим.
-1
Игорь ФИН Игорь ФИН 5 лет назад #
здесь это работает, а на тестовых сайтах у меня не работает. ( только что проверил)
+2
Fuze Fuze 5 лет назад #
Правильно, и не должно работать, я же ваш сервер не настраивал для этого.
Смею доложить, ваш вопрос решается при помощи гугла и желания решить. Например, как то так или подобно.
-1
Игорь ФИН Игорь ФИН 5 лет назад #
Спасибо .
Напильник большой , я думаю что допилит, в свои 50 я еще не разучился учится.
Fuze:
при помощи гугла и желания решить.
Я своих клиентов тоже буду в гугол отправлять,
Когда захотите вносить свой продукт в реестр, чтобы на нем могли делать проекты для гос контор, и поднимать хорошие деньги, и сбор на что то новое заканчиваться бы в 2 дня.
Можно обратится ко мне и я в этом помогу , а можно решать вопрос решается при помощи гугла .
+3
WebMan WebMan 5 лет назад #
Игорь ФИН, во-первых, будьте добры, умерьте Ваши претензии. Это движок для соцсети, а не для госконтор. К тому же бесплатный. Вам и так стараются помочь и подсказать решения ваших задач.

Во-вторых, прошу Вас в этой теме писать комментарии по существу: мы тут тестируем новый функционал, который, как я понял из Ваших сообщений выше, может пригодиться и Вам тоже. Мы будем Вам благодарны за более конкретную, чем просто претензии, помощь в тестировании этого варианта.
0
Игорь ФИН Игорь ФИН 5 лет назад #
Я конечно со вторника приму участие в тестировании, сегодня до тестирую 2.6.0 мне нужно обновить один проект , чтобы все прошло корректно (сайт выпускников с 40 000 фото (фото начиная с 36 года )), и как только пойму что его можно обновить, протестирую ваш скрипт.
WebMan:
Это движок для соцсети
Есть такой движок для соц сетей - называется «1С-Битрикс» ( в гугле найдете их сайт)
1С-Битрикс::
Модуль «Социальная сеть» включает все необходимые инструменты для создания сообщества на сайте. Участники сообщества могут объединяться в группы по интересам; заводить друзей, писать сообщения в «Живую ленту», отправлять файлы и обмениваться мгновенными сообщениями прямо через браузер и выполнять другие типичные действия современной социальной сети.
Так вот 90% этих сайтов работают на движке этой социальной сети ( а уж сколько по России).
http://dit.mos.ru/stat/?basman.mos.ru
+4
letsgo letsgo 5 лет назад #
Webman с уважением к Вам, ну какой движок для соц сети? Давайте вещи называть своими вещами. 2 Инстант сделан как ориентированный на контент и каталоги движок. Именно сама база движка. Гибкие настройки именно под создание типов контента и весь упор на это. И сделано это правильно.

Основная сфера применения движка, как я вижу

- Информационные сайты и сообщества по тематике
- Региональные сайты информация + каталоги
- Видео сайты (система + видео компонент)

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

Игорь, вы тоже не совсем пока верно оцениваете аудиторию. Основной клиент Instantcms сейчас - я не касаюсь видео, которое используют организации и без внесения в реестр, но в целом это свободный web мастер, который хочет сделать свой сайт или сайт на заказ. И эта доля очень обширная кстати в целом в рунете. Если с языками вдруг решится вопрос, как я предложил связку с poedit то достаточно быстро движок уйдёт и на другие языки в использование.

Простите за чуть отвлечённый экскурс от темы поста.
+2
WebMan WebMan 5 лет назад #
Хорошо, соглашусь, что это отличный движок для широкой сферы применения smile
+2
Олег Васильевич я Олег Васильевич я 5 лет назад #
А я из вредности не соглашусь! laugh
Применительно к 1-й ветке, - да, согласен полностью.
А вот 2-ю надо двигать как каталог (объектов на картах, видео, авто, трусов и галактик...).
WebMan , простите за флуд!
0
Игорь ФИН Игорь ФИН 5 лет назад #
Заявку на исправления настроек, в службу подержи хостинга я написал .
Еще раз спасибо за совет.
+2
Val Val 5 лет назад #
А следующий юзер-кейс, к сожалению, не работает:
Авторизуемся на сайте, но не ставим галочку "запомнить". И в момент когда мы авторизованы, если перейти в каталог дополнений то там нужно снова входить (авторизовываться). Это несколько нелогично получается!
0
Fuze Fuze 5 лет назад #
Так я и не писал, что так работает) Всё наскоком решается к сожалению.
+3
Александр Александр 5 лет назад #
Внесу свои две копейки -
- уникальные никнеймы;
Возможно предусмотреть премодерацию смены никнейма?
+3
WebMan WebMan 5 лет назад #
В данной реализации премодерация смены никнейма/логина не предусмотрена и вряд ли я сейчас буду такое делать. Пока есть лишь списки запрещённых ников и логинов. Хотя Ваша мысль правильная и мне нравится.

На форуме и на Гитхабе несколько раз поднимался вопрос об опциональной премодерации всего, что пользователи могут создавать и менять на сайте. В том числе были идеи о сохранении предыдущей версии данных и о возврате пользователю новой непринятой версии с комментариями модератора. Насколько я помню, Fuze обещал подумать о создании централизованного механизма для модерации. Может он там учтёт и премодерацию профилей.
0
jorgovich jorgovich 3 года назад #
Централизованная модерация нужная штука. На мой взгляд имеет смысл задуматься еще о централизованном логировании всех действий пользователя, а то напереименовываются, да понашкодят на сайтах, и ищи свищи по базе кто же это сделал..
+2
Старый балбес Старый балбес 5 лет назад #
WebMan:
Я перенёс прошлую версию "Логинов" на InstantCMS 2.6.0 и походу поправил пару незамеченных ранее мелочей. Изменено более сотни файлов.
WebMan! Вы Человек, достойный настоящего мужского уважения! Вы тратите свое драгоценное время для развития нашего уважаемого общества.
ВЫ очень многие работы выполняете на высоком уровне.
+3
WebMan WebMan 5 лет назад #
Уверен, что Fuze и r2 вкладывают времени и сил гораздо больше. Им ОГРОМНОЕ уважение и почёт. Да и многие другие трудятся очень много, например, Loadырь.
И уровень у меня пока очень простой - поколупать чужое и чуток его изменить.
Зато все вместе, каждый сколько сможет - сделаем Двойку ещё лучше. smile
GWK GWK 5 лет назад #
Комментарий удален
+3
WebMan WebMan 5 лет назад #
Пожалуйста, не ставьте этот пакет на рабочие сайты!!! Это только для отработки концепции и выявления возможных ошибок в коде.

Поскольку ждём внедрения этого кода в релиз, то, после утверждения Fuze концепции этого варианта "Логинов" и после вылавливания ошибок, я постараюсь для самых нетерпеливых сделать промежуточный вариант по включению "Логинов" в релиз 2.6.х. Но это только на ваш личный страх и риск и только для тех, кто готов самостоятельно разбираться в своих сайтах, если при обновлении до следующего релиза вылезут ошибки. Я ваши сайты чинить не буду. smile
+1
skewes skewes 5 лет назад #
WebMan, а если у меня одна база пользователей на два разных домена?
По идеи ведь должно работать? scratch

А вообще ВАМ БОЛЬШОЕ СПАСИБО ЗА ПРОДЕЛАННЫЙ ТРУД !!!
Молодец! И однозначно плюс в карму!
joke
+1
WebMan WebMan 5 лет назад #
Я такое не тестировал. Но, по идее, должно работать как и раньше. Разве что на обоих доменах должна быть одинаковая версия системы. Если можете потестить на локалке - скажите результат.
Fuze глубже понимает этот механизм и, думаю, учтёт этот момент при добавлении кода в релиз.
0
Игорь ФИН Игорь ФИН 5 лет назад #
зашел в гугол по гуглить решения
а он мне
завтра начну заниматься вашим скриптом ( тестировать).
0
WebMan WebMan 5 лет назад #
smile )) Давайте! Вам уже подсказки об этом со всех сторон.
0
Нико Нико 5 лет назад #
Когда отправляешь дружбу 404 ошибка. Посмотрел на ссылку там http://test/users/1 как можно это исправить ?
0
WebMan WebMan 5 лет назад #
Не смог воспроизвести ошибку. Напишите, пожалуйста, подробно и пошагово как Вы её получили.
0
WebMan WebMan 5 лет назад #
Нашёл, спасибо.
Нужно в файлах \system\controllers\users\actions\friend_add.php и \system\controllers\users\actions\friend_delete.php в трёх местах заменить $friend_id на $friend->slug как тут и тут.
Залил архив с обновлённой версией 0.6.260.1 (ссылка в топике). Можете взять файлы оттуда.
0
Capitan Capitan 5 лет назад #
Вопрос к тем у кого стоит компонент Как полет? все нормально с логинами?
+1
WebMan WebMan 5 лет назад #
Данный вариант НЕ ПРЕДНАЗНАЧЕН для использования в реальных проектах.Он выложен тут ТОЛЬКО ДЛЯ ТЕСТИРОВАНИЯ.
Это не готовый компонент, Capitan и даже не просто хак. Изменено почти 100 файлов. Некоторые изменения не совместимы с текущими шаблонами. Ни в коем случае не ставьте его на реальный проект. Подождите чуток.
Итоговый вариант "Логинов" передан разработчикам. Надеюсь, его внедрят на следующем шаге после связей.
0
Pocus Pocus 4 года назад #
Ура, товарищи! То, чего так долго ждали большевики - случилось! Товарищ Fuze дал добро на внедрение универсальных логинов и авторизации в ближайший релиз (мажорный или минорный - это ему виднее)
Пора бы уж. Но пока тихо
0
Def Def 3 года назад #
Появилась финала?) А то версия 2.10.1 не пойму даёт ли такую возможность
0
WebMan WebMan 3 года назад #
В 2.10.1 такой возможности нет. Когда будет и будет ли вообще - спросите у Игоря (Fuze).
0
Def Def 3 года назад #
жаль, т.к по телефону или мылу на выбор регистрироваться и авторизовываться гораздо удобнее. также и по улогину, жаль он не встроен в виджет опционально.
0
Антон Круппо Антон Круппо 2 года назад #
Здравствуйте! Так понимаю идея внедрения логинов не прижилась?
0
WebMan WebMan 2 года назад #
Видимо, это было нужно недостаточному количеству пользователей.
В версии 2.13 появилась фича "Форма авторизации теперь системная. Можно изменять хуками как угодно". Можно ли авторизоваться по другому полю, кроме почты, и что для этого нужно сделать - я ещё не выяснял. Возможности заменить числовые id на красивые строковые значения в адресах профилей пользователей точно нет.

Еще от автора

Хуки-хухуки: Исключаем неактивных пользователей из списков
Как иногда начинают свой монолог неопытные стендаперы: «У всех в жизни было такое …
«Расширенная отладка» для InstantCMS 2.14.1 (v.14.1.2) – большое обновление для разработчиков
Новые возможности и удобства, облегчающие разработчикам отладку компонентов и шаблонов.
Использование расширенной отладки. Часть 11. Анализ ошибок 403/404 и редиректов
Одной из неудобных задач при отладке для меня является поиск причины ошибки 403/404.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.