|
|
|
Как сделать unset role?
|
|||
|---|---|---|---|
|
#18+
Сделала set role RL; Как сделать unset только этой роли? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2003, 12:47 |
|
||
|
Как сделать unset role?
|
|||
|---|---|---|---|
|
#18+
set role all except RL; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2003, 12:48 |
|
||
|
Как сделать unset role?
|
|||
|---|---|---|---|
|
#18+
Да наверное это самое подходящее, но set role all except RL; добавит роли которые не были установлены до этого. Хотелось бы просто отключить роль установленную set role RL; А остальное оставить нетронутыми. Можно еще пару вопросов. 1) set role действует только в течении сессии? 2) как узнать какие роли активны у текущего пользователя? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2003, 12:58 |
|
||
|
Как сделать unset role?
|
|||
|---|---|---|---|
|
#18+
Придется мне все-таки отослать Вас к документации. set role включает у пользователя указанные роли и выключает все остальные. Действует до следующей команды set role или до конца сессии. Проверить активные роли можно в session_roles. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2003, 13:47 |
|
||
|
Как сделать unset role?
|
|||
|---|---|---|---|
|
#18+
Спасибо set role включает у пользователя указанные роли и выключает все остальные. Действует до следующей команды set role или до конца сессии. Проверить активные роли можно в session_roles. Этого мне оказалось достаточно чтобы разобраться. Последний вопрос, как узнать роли которые granted текущему пользователю. user_roles - такого вью нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2003, 13:59 |
|
||
|
Как сделать unset role?
|
|||
|---|---|---|---|
|
#18+
SQL> select object_name from dba_objects 2 where object_name like 'DBA_%ROLE%' 3 or object_name like 'DBA_%PRIVS%'; OBJECT_NAME -------------------------------------------------------------------------------------------------------------------------------- DBA_COL_PRIVS DBA_ROLES DBA_ROLE_PRIVS DBA_RSRC_CONSUMER_GROUP_PRIVS DBA_RSRC_MANAGER_SYSTEM_PRIVS DBA_SYS_PRIVS DBA_TAB_PRIVS DBA_COL_PRIVS DBA_ROLES DBA_ROLE_PRIVS DBA_RSRC_CONSUMER_GROUP_PRIVS DBA_RSRC_MANAGER_SYSTEM_PRIVS DBA_SYS_PRIVS DBA_TAB_PRIVS DBA_COL_PRIVS DBA_ROLES DBA_ROLE_PRIVS DBA_SYS_PRIVS DBA_TAB_PRIVS 19 rows selected. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2003, 14:03 |
|
||
|
Как сделать unset role?
|
|||
|---|---|---|---|
|
#18+
sorry, pogoryachilsya :-) USER_SYS_PRIVS USER_TAB_PRIVS USER_ROLE_PRIVS USER_COL_PRIVS ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2003, 14:09 |
|
||
|
Как сделать unset role?
|
|||
|---|---|---|---|
|
#18+
"set role включает у пользователя указанные роли и выключает все остальные. Действует до следующей команды set role или до конца сессии. " Теперь у меня появились вопросы. Не знаю, что там поняла Violina. set role all except RL - включает все роли исключая RL. Но кто сказал, что до этого момента были выданы все роли??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2003, 14:31 |
|
||
|
Как сделать unset role?
|
|||
|---|---|---|---|
|
#18+
2 softbuilder Не ожидал от Вас такого вопроса! Разумеется, не все роли, присутствующие в системе. Только все роли, выданые пользователю. 2 Violina Очень помогает запрос вида select * from dictionary where table_name like '%ROLE%' или с поиском по колонке comments. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2003, 14:46 |
|
||
|
Как сделать unset role?
|
|||
|---|---|---|---|
|
#18+
to softbuilder Но кто сказал, что до этого момента были выданы все роли??? Никто не говорил. Это как раз я и обозначила, что set role all except RL включит все предоставленные роли даже те которые не были включены до вызова set role RL. А поняла я следующее: Допустим юзеру granted следующие роли R1, R2, R3, R4, R5, R6. Делаем set role R1, R2, R3; у юзера включены роли R1, R2, R3. set role R4; у юзера стала включенной только роль R4. set role all except R4; у юзера включены роли R1, R2, R3, R5, R6. Вот тут и было мое примечание, что я просто хотела убрать роль R4 а команда set role all except R4 включила даже те роли которые изначально не были включены. И мой вывод - команды для выключения одиночной роли из множества включенной роли нету! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2003, 15:04 |
|
||
|
Как сделать unset role?
|
|||
|---|---|---|---|
|
#18+
простите И мой вывод - команды для выключения одиночной роли из множества включенных ролей нету! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2003, 15:09 |
|
||
|
Как сделать unset role?
|
|||
|---|---|---|---|
|
#18+
"Разумеется, не все роли, присутствующие в системе. Только все роли, выданые пользователю. " to Al: Разумется только выданные. Значит я не правильно тебя понял :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2003, 15:16 |
|
||
|
Как сделать unset role?
|
|||
|---|---|---|---|
|
#18+
Можно сделать просто: из session_roles выбрать текущие активные, сформировать список и выдать set role <полученный список без выброшенной роли>. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2003, 15:16 |
|
||
|
Как сделать unset role?
|
|||
|---|---|---|---|
|
#18+
to Bardis USER_COL_PRIVS - мне стало любопытно. Можно привилегии на колонки давать? Можно пример. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2003, 15:33 |
|
||
|
Как сделать unset role?
|
|||
|---|---|---|---|
|
#18+
grant insert(update) on table(col1,col2..) to user ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2003, 15:40 |
|
||
|
Как сделать unset role?
|
|||
|---|---|---|---|
|
#18+
to MA_D Спасибо, теперь стало понятно. А если хочеться запретить select какой то колонки например salary? то надо уже это через вью делать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2003, 15:43 |
|
||
|
Как сделать unset role?
|
|||
|---|---|---|---|
|
#18+
2 Violina: You are correct in "команды для выключения одиночной роли из множества включенных ролей нету". You have to wrire a simple script. Data dictionary view SESSION_ROLES lists the roles that are currently enabled to the user. So: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. SY. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2003, 22:04 |
|
||
|
Как сделать unset role?
|
|||
|---|---|---|---|
|
#18+
to SY Thank you for полезный скрипт! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2003, 09:40 |
|
||
|
Как сделать unset role?
|
|||
|---|---|---|---|
|
#18+
Возник еще вопрос некоторым юзерам выдано grant sysdba to Как узнать 1) какие юзеры имеют роль sysdba 2) для конкретного юзера имеет ли он sysdba ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2003, 10:10 |
|
||
|
Как сделать unset role?
|
|||
|---|---|---|---|
|
#18+
v$pwfile_users ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2003, 10:12 |
|
||
|
Как сделать unset role?
|
|||
|---|---|---|---|
|
#18+
1) А если password файл не используется? Или он есть всегда, даже если не используется? Простите за дурацкий вопрос, я просто не совсем уверена и хочу уточнить. 2) user залогинился не как sysdba но ему granted sysdba. Как ему узнать в таком сеансе что у него эта роль есть? v$pwfile_users не работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2003, 10:23 |
|
||
|
Как сделать unset role?
|
|||
|---|---|---|---|
|
#18+
Violina, я начинаю удивляться... sysdba и sysoper - не роли, а привилегии, причем особые. sysdba и sysoper всегда прописываются в файл паролей. Вы не можете дать эти привилегии, если файл паролей не существует. Когда пользователь коннектится as sysdba, то он реально коннектится как sys. sysoper - как public в 8.1 и 9. Поэтому select user from dual при connect system/manager as sysoper даст public, а при connect system/manager as sysdba даст sys. Вы никогда при таких особых коннектах не увидите пользователей оракловской базы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2003, 10:33 |
|
||
|
Как сделать unset role?
|
|||
|---|---|---|---|
|
#18+
Я как раз сейчас изучаю досконально эту тему. Спрашиваю я, когда возникают сомнения или вопросы на которые явно ответ в тексте усмотреть не удается. А почему при connect system/manager as sysoper дает public? public это же вроде как общедоступный а sysoper все таки не самая слабая привилегия? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2003, 10:48 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=32165256&tid=1990415]: |
0ms |
get settings: |
11ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
182ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
74ms |
get tp. blocked users: |
2ms |
| others: | 229ms |
| total: | 538ms |

| 0 / 0 |
