powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / таблицы и алгоритм для системы управления правами групп
5 сообщений из 5, страница 1 из 1
таблицы и алгоритм для системы управления правами групп
    #33941638
Fixer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нужно написать систему управления правами групп для модулей системы.
думаю реализовать следующим образом:

таблица модулей:
id
obj_name

таблица модулей:
id
group_name

таблица прав групп:
id
group_id
obj_id
rigth (bit)
..
в эту таблицу возможно будут добавлены поля, для вида прав на данный модуль (на данный момент на каждый модуль они — полные)
при создании новой группы, в таблицу прав групп будут добавляться записи с правами на все существующие модули, а, при создании нового модуля, его запись будет также добавляться для каждой группы.
Чтобы отобразить список групп с правами, я планирую использовать GridView, со строками вида:
название группы|список прав на модули с чекбоксом для каждого модуля.
для списка список прав с чекбоксами будет реализован CheckBoxList.

----

Подскажите, допустил ли я при проектировании какие-то ошибки в плане реализации и возможности дальнейшего расширения программы?
Как можно было бы реализовать задачу лучшим образом?
...
Рейтинг: 0 / 0
таблицы и алгоритм для системы управления правами групп
    #33941935
Nikolay_Ch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я бы из третьей таблицы убрал поле rigth (зачем собственно оно нужно? есть запись — есть доступ, нет записи — нету доступа) и ID, и оставил составной ключ из пользователя и группы (тогда избежишь лишних проверок на совпадение данных).

Еще для себя иногда я делал битовое поле в таблице объектов для указания общих вседоступных объектов. Правда потом отказался это делать — большого смысла в такой идеологии нет.

Еще — по алгоритму. При создании пользователя или группы необходимо давать минимальные права . При создании модуля, прав никому не давать . Тогда избежишь многих ошибок с доступами. Мало-ли как будет — создал ты модуль или пользователя, отвлекся, и забыл про него. А права у него максимальные. Пользователь с минимальными правами к тебе тут-же прибежит, и это отследить можно. Пользователь-же с максимальными правами ничего не заметит, а проблемы потом возникнуть могут.
Для отображения списка ролей я использовал обычный repeater, при щелчке на роль проваливался в такой-же repiter, но уже со списком ролей и с checkbox'ами, отмеченными в соответствии с правами.
...
Рейтинг: 0 / 0
таблицы и алгоритм для системы управления правами групп
    #33944682
Fixer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, Nikolay_Ch, Вы писали:

N_C>Для отображения списка ролей я использовал обычный repeater, при щелчке на роль проваливался в такой-же repiter, но уже со списком ролей и с checkbox'ами, отмеченными в соответствии с правами.
---

При изменении прав предполагается выполнять соответствующее число команд INSERT или можно как-то вставить данные за один запрос (MSSQL 2000)?
...
Рейтинг: 0 / 0
таблицы и алгоритм для системы управления правами групп
    #33945395
Nikolay_Ch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ЗF>При изменении прав предполагается выполнять соответствующее число команд INSERT или можно как-то вставить данные за один запрос (MSSQL 2000)?
Я делал через один. Тут надо балансировать. С одной стороны — в 2к нет параметризированного списка — т.е. когда в in передаешь параметр. Соответственно надо слеплять запрос, а этот путь может привести к хаку, через запросы. С другой стороны делать кучу инсертов — как-то неудобно... В принципе можно обойтись хранимкой, которая принимает на вход массив прав, и ты уже лепишь запрос в хранимке.
...
Рейтинг: 0 / 0
таблицы и алгоритм для системы управления правами групп
    #33947318
Fixer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
И вот по Repeater'у вопрос появился: как и в каком событие в моём случае обращаться к элементам checkBox'а (находящегося в Repeater'е, который в свою очередь — в GridView), при update GridView?
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / таблицы и алгоритм для системы управления правами групп
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]