|
|
|
посмотреть на права юзеров в базе
|
|||
|---|---|---|---|
|
#18+
Мужик, ну хорош уже прикалываться-то Тебе действительно чего-то надо? Тогда ответь - достаточно ли тебе будет знать роль юзверя? Только всерьез, приколы неуместны - время дорого же. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2004, 15:58 |
|
||
|
посмотреть на права юзеров в базе
|
|||
|---|---|---|---|
|
#18+
ещё раз попробую :) При загрузке приложения(формы) , мне нужно знать есть ли у этого юзера права на столбцы таблицы или нет (причем права могут задаваться тока в роли , а запрос на сервер WHERE =USER) SELECT на столбцы мне нужен как воздух , а его нету, поэтому и спрашивал по поводу Referance. Может и не стоило так выкаблучиваться, хотя мне быва интерестна тока функция возвращающая значение.. В общем получилось, правда с нагромождениями... 1). Узнаём какие права доступа у ролей SELECT RDB$FIELD_NAME, RDB$PRIVILEGE, RDB$RELATION_NAME,RDB$USER,RDB$USER_TYPE FROM RDB$USER_PRIVILEGES P WHERE RDB$USER_TYPE=13 2). узнаём какие юзеры к каким ролям принадлежат SELECT RDB$OBJECT_TYPE, RDB$RELATION_NAME, RDB$USER FROM RDB$USER_PRIVILEGES P WHERE RDB$OBJECT_TYPE=13 3). Результат.. SELECT RDB$RELATION_NAME, RDB$USER, RDB$FIELD_NAME, RDB$PRIVILEGE FROM RDB$USER_PRIVILEGES P WHERE RDB$USER_TYPE=8 AND RDB$OBJECT_TYPE<>13 UNION SELECT SEL_ROLES.RDB$RELATION_NAME, USERSGROUP.RDB$USER, SEL_ROLES.RDB$FIELD_NAME, SEL_ROLES.RDB$PRIVILEGE FROM USERSGROUP INNER JOIN SEL_ROLES ON USERSGROUP.RDB$RELATION_NAME=SEL_ROLES.RDB$USER Вроде бы так... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2004, 17:06 |
|
||
|
посмотреть на права юзеров в базе
|
|||
|---|---|---|---|
|
#18+
автор2). узнаём какие юзеры к каким ролям принадлежат SELECT RDB$OBJECT_TYPE, RDB$RELATION_NAME, RDB$USER FROM RDB$USER_PRIVILEGES P WHERE RDB$OBJECT_TYPE=13 Ысчё раз повторяю. Роли - не есть группы! Юзеры ролям не принадлежат . Юзеру даётся право подключаться к базе с той или иной ролью. При этом роль он должен сам указать . Явно. В параметрах подключения. Роли не комулятивны! Т.е. если юзеру даны гранты (к примеру) на роли BUCH и BOSS, то работают права только той роли, которую он указал при коннекте. Аминь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2004, 19:17 |
|
||
|
посмотреть на права юзеров в базе
|
|||
|---|---|---|---|
|
#18+
Мимопроходящий Сейчас проверил-понял.... прошу прощения, что я такой не понятливый :(( Блин, а как решают проблему с группами, или это не решаемо ? Всё равно запрос надо стоить будет, я предпочту обработать всё на сервере, а клиенту через EXECUDE или SELECT дать готовые данные, (WHERE USER="USER" AND TABLE="TABLE" AND ROLE="ROLE") с этим тогда сам разберусь. Единственно мучает вопрос , будет несколько вложенных запросов на таблицу с правами и сопутствующие... сервер выдержит нагрузку..(тормозить не будет ?) ведь к этим запросам будут обращатся достаточно часто (при открытии каждой формы ), и каждому юзеру нужно будет предоставлять свою выборку из массива ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2004, 09:33 |
|
||
|
|

start [/forum/topic.php?fid=40&gotonew=1&tid=1579005]: |
0ms |
get settings: |
7ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
157ms |
get topic data: |
10ms |
get first new msg: |
5ms |
get forum data: |
2ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 238ms |
| total: | 480ms |

| 0 / 0 |
