Доступ к профилю пользователя

Грустная история о баге или дыре в безопасности

 
Sometime CMS Community
Посетитель
no avatar
Сообщений: 13
Даю вводную. При создании сайта возможность выбора "кому показывать профиль" была вырезана из шаблона настроек пользователя. Расчет был на то, что все профили будут видны всем.

Через некоторое время после запуска сайта часть профилей пользователей оказались "закрыты настройками безопасности" и точно видны только из-под админа. Параметр allow_who в cms_users_profiles в phpmyadmin’е у них пустой. То есть вообще пустой.

Я не исключаю, что это не баг, а кто-то с достаточными знаниями валяет дурака. Впрочем, это не главное. Я совершенно не разбираюсь в php и mysql, а надо срочно восстановить равновесие, то есть сделать так, чтобы параметр allow_who в cms_users_profiles всегда был равен all, при этом не мог изменяться. Как осуществить это? Или есть альтернативные способы решения проблемы?

Заранее спасибо.
InstantCMS Team
small user social cms
МедальКубок зрительских симпатийАвторитет форумаПатриот InstantCMS ;-)
Сообщений: 3129
garryck, начнем сначала - если Вы не разбираетесь в php и mysql - то как - При создании сайта возможность выбора "кому показывать профиль" была вырезана из шаблона настроек пользователя. Расчет был на то, что все профили будут видны всем...
Зарабатываю здесь - Хостинг здесь - Жить в обществе и быть свободным от общества нельзя!...
Реклама
cms
Sometime CMS Community
Посетитель
no avatar
Сообщений: 13
Madmax:

garryck, начнем сначала - если Вы не разбираетесь в php и mysql - то как - При создании сайта возможность выбора "кому показывать профиль" была вырезана из шаблона настроек пользователя. Расчет был на то, что все профили будут видны всем...

Ну, как всегда в России - квадратно-гнездовым методом, с помощью научного тыка=) Под шаблоном настроек пользователя я подразумеваю com_users_edit_profile.tpl. Просто удалил оттуда выпадающую менюшку. Нигде больше ничего не правил, я имею ввиду, связанное с правами просмотра.
Маловероятно, что причиной глюка послужило подобное варварское выдирание менюшки, поскольку пользователи с пустым параметром идут вперемежку с нормальными.
InstantCMS Team
small user social cms
МедальКубок зрительских симпатийАвторитет форумаПатриот InstantCMS ;-)
Сообщений: 3129
garryck, вы выдрали это из _default_ или из своего шаблона?
Зарабатываю здесь - Хостинг здесь - Жить в обществе и быть свободным от общества нельзя!...
Sometime CMS Community
Посетитель
no avatar
Сообщений: 13
Madmax, из _default_. "Своего" шаблона у меня в общем-то нет, просто поменял _default_, слегка поменяв дизайн.
InstantCMS Team
small user social cms
МедальКубок зрительских симпатийАвторитет форумаПатриот InstantCMS ;-)
Сообщений: 3129
Тогда верните измененный *.tpl из архива на FTP... и надо искать другие пути решения проблемы
Зарабатываю здесь - Хостинг здесь - Жить в обществе и быть свободным от общества нельзя!...
Sometime CMS Community
Посетитель
no avatar
Сообщений: 13
Madmax, Спасибо за совет. Возможно, так и сделаю, хотя все-таки не тянет позволять пользователям самим закрывать свои профили от просмотра - не тот формат проекта. Теи более, что у меня есть сильные подозрения, что как раз сейчас это сами юзеры и закрылись от посторонних глаз, найдя какую-то дыру=)

Пытаюсь сейчас разобраться в коде, найти отвечающие за это дело строчки. Вроде нечто похожее есть в usercore.php начиная с 578й строки. Пока единственная моя идея - добавить в процедуру проверки того, кому разрешено смотреть профиль, строчку с вариантом пустоты, вернее, как я недавно установил, все-таки пробела, и посмотреть, что получится.
Редактировалось: 1 раз (Последний: 27 сентября 2009 в 17:47)
Sometime CMS Community
Посетитель
no avatar
Сообщений: 62
Администратор проекта ОБЯЗАТЕЛЬНО! Обязательно должен иметь доступ ко всему проекту. В том числе и в закрытые профили либо блоги, да и вообще чтобы это нибыло. Нужно назначит ID группы администратора как одного и единственного ID который может в целях безопасности, спама, либо подозрения на либо что зайти в любые группы и т.д. с целью личной безопасности проекта в целом. Мало того, сделать функцию, при подозрении на которую, данный ID мог сделать предупреждение, либо выставить на голосование, как организовали на _promodj.ru. И все пользователи могли отдать голос (не недавно зарегистрированные, а более чем к примеру 7 дней), во избежание регистрации и отдачи голоса за самого себя. Ну суть понятна, насколько это будет внедрено в систему, настолько владельцы порталов будут спать спокойно. Эта функция несет безопасность проекта в целом. Повторюсь - безопасность. И это не идея, это давно реализованные функции, которые имеют многие CMS порталы.
В начало страницы
Предыдущая темаСледующая тема Перейти на форум:
Быстрый ответ
Чтобы писать на форуме, зарегистрируйтесь или авторизуйтесь.