В общем случае это абсолютно симметричные решения. Сделать выбор можно лишь из конкретики, то есть нужно смотреть, что оптимально. Например, есть 10 юзеров и 1000 объектов - тогда вариант 2. Или 1000 юзеров и 10 объектов - тогда вариант 1. Или же смотреть, исходя из каких-то ещё данных - наличие категорий юзеров, наличие категорий объектов, и т.п.
Solmyr: Потому что фактически один юзер - одна роль. Для каждого юзверя список объектов к которым есть доступ - разный.
Да ладно! Это ничего не меняет, по сути. Список объектов - это и есть список ролей, фактически. Бахаем в БД для каждого юзера сериализованный объект или массив, например, – а при выяснении прав на совершение действий проверяем наличие необходимого элемента.
По делу там всё ясно – требуется отсечь атаку, идентифицируемую как многократные однотипные запросы. Варианты все известны и обсуждались на форуме неоднократно. Можно хоть прикреплённую тему создавать.
Но к тому, что ты тут понаписал, вообще никаким боком не лежит.
ivan-lev: На самом деле, они есть.. Даже если явно не обозначены.. Как минимум... - администратор - авторизованный пользователь - гость
Ну всем же понятно, что роли – это более широкий диапазон. Хотя, конечно, разница только в количестве градаций. И с этой точки зрения - вроде как стандартная ситуация, реализованная 100500 раз.
К чему вообще твоё появление в этом топике? Показать свою продвинутость? Не получилось. Помочь ТСу? Так здесь ты вообще разговор в сторону уводишь? Зачем вся эта болтовня?!
Капчи какие-то, поля, проверки до обработчика... Мрак какой-то...
SeVlad: Неожиданно... А где ты увидел глупости-то? Проверка введённого в поля до их отправки на обработчик - очень даже стандартное и правильное поведение формы.
Глупости я увидел в том, что к теме это не имеет никакого отношения. Тема – про взлом через обработчик формы, и клали взломщики большой и толстый предмет на все проверки на стороне клиента. Данные отсылаются сразу на обработчик, где их и видит ТС. И все слова, которые понаписаны Надеждой, - это всего лишь его личные фантазии.
SeVlad: к сож, редкий в последнее время случай, когда Nadejda, действительно дело говорит.
Тебе показалось. Он и в этот раз просто зашёл какашками покидаться.
логика сводится к разрешению отдельных прав (на редактирование?) доступа к конкретным объектам
В предельном случае я вижу это как наличие неопределённого массива юзеров и неопределённого массива объектов доступа. И есть альтернатива:
1) добавлять массив доступных объектов каждому юзеру
2) добавлять массив допущенных юзеров каждому объекту.
В общем случае это абсолютно симметричные решения. Сделать выбор можно лишь из конкретики, то есть нужно смотреть, что оптимально. Например, есть 10 юзеров и 1000 объектов - тогда вариант 2. Или 1000 юзеров и 10 объектов - тогда вариант 1. Или же смотреть, исходя из каких-то ещё данных - наличие категорий юзеров, наличие категорий объектов, и т.п.
Потому что фактически один юзер - одна роль. Для каждого юзверя список объектов к которым есть доступ - разный.
Да ладно! Это ничего не меняет, по сути. Список объектов - это и есть список ролей, фактически. Бахаем в БД для каждого юзера сериализованный объект или массив, например, – а при выяснении прав на совершение действий проверяем наличие необходимого элемента.
Мне уж показалось, что судя по гиперактивности, не вы ли автор сего сайта...
Креститься надо, когда кажется. Мне просто не нравится, когда кто-то влезает в тему с дурацкими наездами и офтопом, ничего в этом не соображая.
Какая атака? Хватит, удачного одного запроса, чтобы атака оказалась удачной...
1. Весь код, который привел ТС, вообще не должен доходить до обработки
foreach($_POST as $key => $value)
{
// Фильтрация и проверка данных PHP , первое что попалось
}
Код обработчика данных
Что у вас за программист? Это, же азы, не допускать до обработчика всякую хрень.
Подскажите почему гугл в данном случае выдает предупреждение, срок стоит 60 дней, а все равно ему не нравится
Насколько я помню, некоторое время назад гугль совсем сбрендил: теперь ему срок длительностью чуть ли не год нравится видеть.
По делу, хоть скажи что нибудь.....
По делу там всё ясно – требуется отсечь атаку, идентифицируемую как многократные однотипные запросы. Варианты все известны и обсуждались на форуме неоднократно. Можно хоть прикреплённую тему создавать.
Но к тому, что ты тут понаписал, вообще никаким боком не лежит.
На самом деле, они есть.. Даже если явно не обозначены.. Как минимум...
- администратор
- авторизованный пользователь
- гость
Ну всем же понятно, что роли – это более широкий диапазон. Хотя, конечно, разница только в количестве градаций. И с этой точки зрения - вроде как стандартная ситуация, реализованная 100500 раз.
за много лет, только на одном сайте пришлось название поля менять.
Опять о своём, наболевшем. Открывай свою тему и флуди там. Зачем в чужую лезть?
у тебя, что ума не хватает
Это у тебя ума не хватает понять проблему.
К чему вообще твоё появление в этом топике? Показать свою продвинутость? Не получилось. Помочь ТСу? Так здесь ты вообще разговор в сторону уводишь? Зачем вся эта болтовня?!
Капчи какие-то, поля, проверки до обработчика... Мрак какой-то...
Неожиданно... А где ты увидел глупости-то?
Проверка введённого в поля до их отправки на обработчик - очень даже стандартное и правильное поведение формы.
Глупости я увидел в том, что к теме это не имеет никакого отношения. Тема – про взлом через обработчик формы, и клали взломщики большой и толстый предмет на все проверки на стороне клиента. Данные отсылаются сразу на обработчик, где их и видит ТС. И все слова, которые понаписаны Надеждой, - это всего лишь его личные фантазии.
к сож, редкий в последнее время случай, когда Nadejda, действительно дело говорит.
В общем-то такой сущности как "роли"
Значит, надо сделать. И получится – в варианте 2 проверка варианта 1.