@Malazar

Безопасности ли так делать в php?

Вечер добрый. Подскажите Безопасности ли так делать в php пользовательские роли.
Пытаюсь сделать разделение прав, на сайте.
Есть таблица в таблице есть (status) Там в статусе к примеру 1, 2, 3, 4, 5.

На сайте получилось вывести так,
<? if( $_SESSION['user']['status'] == 1):?>
	fdsfdsfdsfds
<?php endif; ?>


То есть такой вариант получилось у меня сделать и он выводит "fdsfdsfdsfds". Если же поставить другой статус то уже не показывает, но это уже после перезахода.
Скажите безопасностно ли так делать?

Ещё такой вопрос.
К примеру есть меню.
Главная, моя лента, все новости, все теги, пользователи, уведомления.

К меню (Главная, моя лента, все новости, все теги. ) Делаем статус = 1. К другогим ( пользователи, уведомления ) Делаем статус =2.
Как можно сделать так что бы.
К статусу 3. Показывалась все меню?
  • Вопрос задан
  • 493 просмотра
Пригласить эксперта
Ответы на вопрос 3
muzikant777
@muzikant777
PHP/Vue разработчик
Скажите безопасностно ли так делать?
Настолько же безопасно, насколько в безопасности находится и вся сессия.

Как можно сделать так что бы. К статусу 3. Показывалась все меню?
Система со статусами плохо масштабируется. Лучше используйте систему прав на основе разрешений - permission.
Но это потребует написания некоторого количества обёрток или использования фреймворка.
Ответ написан
Комментировать
@aveBHS
Безопасно, пока не найдут способ взламывать сессии и изменять их.
Ответ написан
Комментировать
@metajiji
Лучше это хранить в базе, например redis/memcache или при небольшой нагрузке в sql. В сесии максимум id пользователя.
Как вы уже заметили при вашем подходе есть проблемы с "перезаходами".
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы