|
|
|
Insert
|
|||
|---|---|---|---|
|
#18+
1. Как сделать так, чтобы новую запись в таблицу можно было вставить только через специальную процедуру в пакете, а SQL оператор INSERT ни при каких условиях не выполняется? 2. Кто-нибудь рекурсивные запросы или процедуры исплользует? Поиск путей в графе например? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2002, 15:27 |
|
||
|
Insert
|
|||
|---|---|---|---|
|
#18+
1 вариант: Таблицу, как и другие обьекты помещаешь в отдельную схему, владелец которой сам никогда не использеутся для подключения клиентами. В этом случае даёшь от имени этого специальньго юзера, владельца схемы другим юзерам только те гранты которые нужно. 2 вариант: Если первый вариант не подходит и всегда клиент коннектиться как владелец схемы, то он всегда имеет доступ к своим обьектам. В этом случае трудно что-либо сделать. Если делать что-то в триггере - это не производительно. Да и триггер можно просто убить. Тогда доступ к базе делать не напрямую а через приложение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2002, 16:04 |
|
||
|
Insert
|
|||
|---|---|---|---|
|
#18+
1.a Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 1.b Административно- таблицы лежат в одной схеме, а процедуры в другой. 2. Я использую, не для поиска путей в графе, но использую. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2002, 16:08 |
|
||
|
Insert
|
|||
|---|---|---|---|
|
#18+
to Denis Popov: Если клиенты будут коннектиться как владельцы этой схемы, почему бы не сделать им drop trigger.... и делать всё что угодно? Если они будут коннектиться как не владельцы - то достаточно того что у них нет grant on insert. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2002, 16:15 |
|
||
|
Insert
|
|||
|---|---|---|---|
|
#18+
1. Имхо лучше сразу от этого уходить при разработке приложения и не допускать, чтобы пользователи не заходили под владельцем боевых таблиц. Но если такое имеется- создай этот триггер от имени другого, привелегированного пользователя, куда уж всяко никто не сунется; SYS'а, к примеру. 2. Да, этого достаточно. Это рецепт по-моему от самих Ораклов: разделять владельца данных и владельца методов доступа к этим данным. Если у тебя есть возможность "развести" этих пользователей, административно запретив всем остальным входить под именем владельца таблиц- тебе повезло. И проясни задачу: все-таки сторонние пользователи у тебя могут заходить под именем владельца таблиц, или нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2002, 16:41 |
|
||
|
Insert
|
|||
|---|---|---|---|
|
#18+
А если оставить пользователю только привелегию create session, то он ,насколько я знаю нечего несможет сделать с объектами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2002, 08:38 |
|
||
|
|

start [/forum/topic.php?fid=52&fpage=2826&tid=1992455]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
40ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
31ms |
get tp. blocked users: |
1ms |
| others: | 247ms |
| total: | 354ms |

| 0 / 0 |
