![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| Elfet |
|
|||
![]() Белый и Пушистый ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 3776 Регистрация: 2.4.2003 Репутация: нет Всего: 16 |
Всем привет!
Допустим у нас есть древо сайта. К каждому элементу пользователь должен иметь определённые права: просмотр, изменение, создание, удаление. Так же должны иметься маски доступа (которые возможно описывают не всё древо сайта, а только его часть) Пользователю помимо своих персональных прав доступа можно так же назначить несколько масок. При решении на предоставлении пользователю какого-то права учитывается наилучшая оценка (например: к какомуто элементу у пользователя есть доступ, а у маски (его же) нету права на доступ к модулю - пользователь получит доступ. так же и наоборот.) Правильная такая система разграничения прав пользователя? Как его реализовывать? |
|||
|
||||
| Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 122 Всего: 261 |
Проще.
1. есть макса доступа самого пользователя. 2. есть маска доступа группы пользователя. Приоритет - макска пользователя, причем принцип "все в разрешено" нельзя использовать. Представь себе, есть юзер, в группе юзеры, и все бы хорошо, но в одном разделе он поднапортачил, и ты туда закрыл ему доступ по маске пользователя естественно. Следовательно при твоем подходе "учитывается лучшая оценка" доступ он получит, чего тебе не надо.
Это не верно, т.к. все равно должна быть привязка к пользователю или группе. Иначе как ты будешь поступать, если у тебя добавилась группа пользователей? Реализация зависит от более четкой постановки задачи (в принципе можно и на файлах и на БД делать). Варианты: 1. битовые поля 2. байтовое поле (или N байтовое, суть - работа с ним побитно) 3. множество 4. строка (извратский способ, но на сложных структурах прав доступа работает неплохло). |
|||
|
||||
| Elfet |
|
|||
![]() Белый и Пушистый ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 3776 Регистрация: 2.4.2003 Репутация: нет Всего: 16 |
Да, тут согласен. Только тогда видимо есть три уровня: запрещено, унаследовать, разрешено.
Не совсем понял. Какая разница? Группы пользователей вообще не обязательны. Маски могу описывать часть для простого добавления страниц в древо сайта. Возможно так же нужны ещё права по умолчанию для страниц и такие приоритеты: пользовательская маска, маска, по умолчанию страницы. |
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |