|
|
|
Выполнение SP/динамических запросов с правами владельца
|
|||
|---|---|---|---|
|
#18+
Есть ли в FB возможность выполнять SP / динамические запросы не от имени текущего пользователя, а от имени создателя (владельца) процедуры? В ORACLE это можно сделать так: -- Создаем пользователей Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. -- Создаем процедуры Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. -- Пытаемся выполнить процедуры Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2003, 13:42 |
|
||
|
Выполнение SP/динамических запросов с правами владельца
|
|||
|---|---|---|---|
|
#18+
Опс, ошибся. Не AUTHID CURRENT_USER -- По умолчанию, а AUTHID DEFINER -- По умолчанию ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2003, 14:41 |
|
||
|
Выполнение SP/динамических запросов с правами владельца
|
|||
|---|---|---|---|
|
#18+
Ну в общем-то нету таких средств, а какой в них смысл вобще, почему на процедуру нельзя дать GRANT текущему пользователю? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2003, 15:59 |
|
||
|
Выполнение SP/динамических запросов с правами владельца
|
|||
|---|---|---|---|
|
#18+
Gold писал:Ну в общем-то нету таких средств, а какой в них смысл вобще, почему на процедуру нельзя дать GRANT текущему пользователю? Жаль :( На самом деле пример был упрощен. В этой процедуре хотелось бы выполнить дин. SQL типа: Код: plaintext Естественно, когда процедура выполняется с правами текущего пользователя, он получает ошибку - нет права дать грант на процедуру XXX. А если бы процедура выполнялась с правами владельца (скажем, SYSDBA), такой проблемы не было бы. Нельзя же дать до выполнения этой SP права на все объекты, на которые данный дин. SQL и должен дать права ;) (Упреждаю возможный вопрос - запрос формируется самой системой на основе бизнес-прав (если так можно сказать) пользователя и, следовательно, пользователь ничего плохого здесь сделать не может). (В ORACLE такая схема работает успешно уже 3-й год). Значит, придется выполнять эту процедуру непосредственно от владельца объектов, на которые надо дать гранты. В общем то, это не страшно. Но все же хотелось бы иметь возможность по глобальной для сервера (отдельной БД?) или локальной в SP настройке выполнять процедуры и/или дин. SQL либо с правами владельца, либо текущего пользователя. Кстати, нет информации, не планируется ли такая возможность в следующих версиях FB? Я не нашел чего-то похожего в Feature Requests на сайте Firebird, но может кто знает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2003, 16:38 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=32296597&tid=1579804]: |
0ms |
get settings: |
7ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
176ms |
get topic data: |
9ms |
get forum data: |
5ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
| others: | 236ms |
| total: | 498ms |

| 0 / 0 |
