Нужна идея
Добавлено: 29 ноя 2005, 11:35
Всем привет!
Помогите, нужны идеи по реализации ролей в СУБД
Существует корпоративная база данных из 60 таблиц (Firebird 1.5)
Существует программа которая работает с этой базой.(Delphi 7)
Основной компонент для доступа к записям - TIBDataSet.
С программой уже работают несколько пользователей.
Вопрос:
Как мудро реализовать доступ к функциям программы пользователей с определенными ролями.
Т.е как бы так сделать, чтобы программа проверяла права в базе (не хочется писать отдельный INI файл)
каждой роли и делала видимыми / невидемыми определенные кнопки / Actions.
При этом не хочется выдавать пользователю сообщение типа "Access Denied"
Пускай уж лучше не будут видны кнопки которые вызывают это сообщение.
Кнопки делятся на два вида :
1) + (Добавить запись), - (Удалить запись), / (изменить запись)
2) "Сохранить", "Отменить"
При этом В А Ж Н О !!!
Необходимо контролирвать доступ ролей не только к определенным таблицам, view, procedures но и к определенным
записям.
Например Роль№1 имеет право:
просматривать но не изменять все объекты ЗАО Ромашка,
просматривать и изменять все объекты ООО "Прогресс"
и т.п.
Как просмотреть права на таблицам, view, procedures из системных таблиц объяснять не нужно.
Интересует развернутые технологические идеи по реализации всей системы безопасности.
Заранее благодарен, Валерий.
Помогите, нужны идеи по реализации ролей в СУБД
Существует корпоративная база данных из 60 таблиц (Firebird 1.5)
Существует программа которая работает с этой базой.(Delphi 7)
Основной компонент для доступа к записям - TIBDataSet.
С программой уже работают несколько пользователей.
Вопрос:
Как мудро реализовать доступ к функциям программы пользователей с определенными ролями.
Т.е как бы так сделать, чтобы программа проверяла права в базе (не хочется писать отдельный INI файл)
каждой роли и делала видимыми / невидемыми определенные кнопки / Actions.
При этом не хочется выдавать пользователю сообщение типа "Access Denied"
Пускай уж лучше не будут видны кнопки которые вызывают это сообщение.
Кнопки делятся на два вида :
1) + (Добавить запись), - (Удалить запись), / (изменить запись)
2) "Сохранить", "Отменить"
При этом В А Ж Н О !!!
Необходимо контролирвать доступ ролей не только к определенным таблицам, view, procedures но и к определенным
записям.
Например Роль№1 имеет право:
просматривать но не изменять все объекты ЗАО Ромашка,
просматривать и изменять все объекты ООО "Прогресс"
и т.п.
Как просмотреть права на таблицам, view, procedures из системных таблиц объяснять не нужно.
Интересует развернутые технологические идеи по реализации всей системы безопасности.
Заранее благодарен, Валерий.