powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Еще раз р разграничении прав доступа
8 сообщений из 8, страница 1 из 1
Еще раз р разграничении прав доступа
    #35093175
makondo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день. Тема не раз поднималась. Например, эта тема показательна.

Делаю в оракле разграничение доступа.

1. Таблица USR (ID, NAME, other fields ) - пользователи
2. Таблица OBJ (ID, name, comments ) - имена как сущностей моей системы, на которые накладываются права, так и объектов БД - таблицы, вьюхи, пакеты, функции итд.
3. Таблица OBJGRANT (ID, NAME) - тип доступа (SELECT, UPDATE, INSERT, EXECUTE итд) Плюс здесь же имена ролей БД типа CONNECT, RESOURCE, DBA итд

4. ТАБЛИЦА ACL (ID, OBJ_ID, {OBJ_TYPE_ID}, OBJGRANT_ID, USR_ID) - все права пользователей
(5. Таблица соответствия ролей и пользователей USRROLES (ID, ROLE_ID, USR_ID) будет скоро...)

Вопрос следующий. Как наиболее красиво организовать совместное хранение отдельных прав пользователей и ролей ? Я их хотел бы называть группами, но в данном случае это одно и то же.

Если в ACL добавить поле-флаг IS_ROLE и в поле USR_ID писать ID роли, то получается некрасиво методологически. Если завести отдельную таблицу ACL_ROLE , то кода больше и опять же , некрасиво.

Как это обычно организуется?
...
Рейтинг: 0 / 0
Еще раз р разграничении прав доступа
    #35093228
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
makondoДелаю в оракле разграничение доступа.
Жаль, что оракл об этом не знает, и ему пришлось городить собственный велосипед.

makondoЕсли в ACL добавить поле-флаг IS_ROLE и в поле USR_ID писать ID роли, то получается некрасиво методологически. Если завести отдельную таблицу ACL_ROLE , то кода больше и опять же , некрасиво.
Посмотри, как это делает Oracle. Например, взгляни в sys.objauth$
...
Рейтинг: 0 / 0
Еще раз р разграничении прав доступа
    #35093389
Mainframe_старый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer makondoДелаю в оракле разграничение доступа.
Жаль, что оракл об этом не знает, и ему пришлось городить собственный велосипед.

makondoЕсли в ACL добавить поле-флаг IS_ROLE и в поле USR_ID писать ID роли, то получается некрасиво методологически. Если завести отдельную таблицу ACL_ROLE , то кода больше и опять же , некрасиво.
Посмотри, как это делает Oracle. Например, взгляни в sys.objauth$

А Вы еще возражали против отдельного курса по управлению правами ..
...
Рейтинг: 0 / 0
Еще раз р разграничении прав доступа
    #35093507
Фотография Программист-Любитель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Имеет смысл использовать максимально имеющиеся в Ms или Oracle системы управления правами, ролями, пользователями ДОПОЛНИВ их своими специфическиим данными, ориентированными на спейцифическую бизнес-логику, архитектуру, интерфейс клиентской части.
...
Рейтинг: 0 / 0
Еще раз р разграничении прав доступа
    #35094868
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mainframe_старыйА Вы еще возражали против отдельного курса по управлению правами ..
И пока не вижу, в чем был неправ. Продолжаю считать, что тратить минимум 32 учебных часа на вдалбливание тезиса "пользуйся готовыми решениями" - многовато; дешевле выгнать тех, кому нужно именно столько времени.
...
Рейтинг: 0 / 0
Еще раз р разграничении прав доступа
    #35095035
makondo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
softwarer Mainframe_старыйА Вы еще возражали против отдельного курса по управлению правами ..
И пока не вижу, в чем был неправ. Продолжаю считать, что тратить минимум 32 учебных часа на вдалбливание тезиса "пользуйся готовыми решениями" - многовато; дешевле выгнать тех, кому нужно именно столько времени.

Хорошо, как бы вы организовали систему прав в системе?
В любом случае необходим клиентский интерфейс а)для заведения пользователей и б) для добавления\удаления им прав как на отдельные сущности системы, так и на объекты БД.

Для этого в любом случае необходимо писать пакеты(я про оракл говорю) выполняющие динамический SQL. В него вставляются имена объектов, итд. Лучше придумать, чем брать их из своих таблиц, придумать не могу.
Почему по вашему мнению нужно отказаться от любой из перечисленных мною выше таблиц?
...
Рейтинг: 0 / 0
Еще раз р разграничении прав доступа
    #35096142
Mainframe_старый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Каждый 10-ый вопрос здесь касается прав доступа. Тут о нем уже так много написано, почти как в гугле, если набрать RAC, access control, access rights, управление доступом, права доступа и т.п.
...
Рейтинг: 0 / 0
Еще раз р разграничении прав доступа
    #35096779
Bogdanov Andrey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
makondo Лучше придумать, чем брать их из своих таблиц, придумать не могу.А почему не брать их из уже существующих в Oracle таблиц и представлений?
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Еще раз р разграничении прав доступа
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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