|
|
|
Еще раз р разграничении прав доступа
|
|||
|---|---|---|---|
|
#18+
Добрый день. Тема не раз поднималась. Например, эта тема показательна. Делаю в оракле разграничение доступа. 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 , то кода больше и опять же , некрасиво. Как это обычно организуется? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.01.2008, 21:49 |
|
||
|
Еще раз р разграничении прав доступа
|
|||
|---|---|---|---|
|
#18+
makondoДелаю в оракле разграничение доступа. Жаль, что оракл об этом не знает, и ему пришлось городить собственный велосипед. makondoЕсли в ACL добавить поле-флаг IS_ROLE и в поле USR_ID писать ID роли, то получается некрасиво методологически. Если завести отдельную таблицу ACL_ROLE , то кода больше и опять же , некрасиво. Посмотри, как это делает Oracle. Например, взгляни в sys.objauth$ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.01.2008, 22:45 |
|
||
|
Еще раз р разграничении прав доступа
|
|||
|---|---|---|---|
|
#18+
softwarer makondoДелаю в оракле разграничение доступа. Жаль, что оракл об этом не знает, и ему пришлось городить собственный велосипед. makondoЕсли в ACL добавить поле-флаг IS_ROLE и в поле USR_ID писать ID роли, то получается некрасиво методологически. Если завести отдельную таблицу ACL_ROLE , то кода больше и опять же , некрасиво. Посмотри, как это делает Oracle. Например, взгляни в sys.objauth$ А Вы еще возражали против отдельного курса по управлению правами .. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2008, 02:47 |
|
||
|
Еще раз р разграничении прав доступа
|
|||
|---|---|---|---|
|
#18+
Имеет смысл использовать максимально имеющиеся в Ms или Oracle системы управления правами, ролями, пользователями ДОПОЛНИВ их своими специфическиим данными, ориентированными на спейцифическую бизнес-логику, архитектуру, интерфейс клиентской части. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2008, 08:36 |
|
||
|
Еще раз р разграничении прав доступа
|
|||
|---|---|---|---|
|
#18+
Mainframe_старыйА Вы еще возражали против отдельного курса по управлению правами .. И пока не вижу, в чем был неправ. Продолжаю считать, что тратить минимум 32 учебных часа на вдалбливание тезиса "пользуйся готовыми решениями" - многовато; дешевле выгнать тех, кому нужно именно столько времени. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2008, 14:37 |
|
||
|
Еще раз р разграничении прав доступа
|
|||
|---|---|---|---|
|
#18+
softwarer Mainframe_старыйА Вы еще возражали против отдельного курса по управлению правами .. И пока не вижу, в чем был неправ. Продолжаю считать, что тратить минимум 32 учебных часа на вдалбливание тезиса "пользуйся готовыми решениями" - многовато; дешевле выгнать тех, кому нужно именно столько времени. Хорошо, как бы вы организовали систему прав в системе? В любом случае необходим клиентский интерфейс а)для заведения пользователей и б) для добавления\удаления им прав как на отдельные сущности системы, так и на объекты БД. Для этого в любом случае необходимо писать пакеты(я про оракл говорю) выполняющие динамический SQL. В него вставляются имена объектов, итд. Лучше придумать, чем брать их из своих таблиц, придумать не могу. Почему по вашему мнению нужно отказаться от любой из перечисленных мною выше таблиц? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2008, 15:24 |
|
||
|
Еще раз р разграничении прав доступа
|
|||
|---|---|---|---|
|
#18+
Каждый 10-ый вопрос здесь касается прав доступа. Тут о нем уже так много написано, почти как в гугле, если набрать RAC, access control, access rights, управление доступом, права доступа и т.п. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2008, 02:54 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=35093389&tid=1544066]: |
0ms |
get settings: |
7ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
170ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
62ms |
get tp. blocked users: |
1ms |
| others: | 211ms |
| total: | 488ms |

| 0 / 0 |
