Форум: "Базы";
Текущий архив: 2002.10.14;
Скачать: [xml.tar.bz2];
Вниз2000 Кто вызвал процедуру? Найти похожие ветки
← →
KAA (2002-09-23 20:11) [0]Есть несколько хранимых процедур, причем они могут быть вызваны либо пользователем, либо другой хранимой процедурой. Как узнать, кто вызвал процедуру, пользователь или другая процедура?
При условии чтоб пользователь вызывая хранимую процедуру, например, из квери аналайзера, не смог бы имитировать вызов из хранимой процедуры.
← →
Hro (2002-09-23 23:23) [1]Непонятно зачем это надо но исходя из сказанного ясно (?) что пользователь довольно грамотный (если умеет из квери аналайзера вызывать хранимые процедуры) однако у него нет доступа к ентерпайс менеджеру чтоб обойти любую проверку. В такой ситуации просто все процедуры принимают некий параметр характеризующий вызывающую сторону :), значения же параметров зашиты в самих процедурах. Может это не самое лучшее решение но работающее.
← →
KAA (2002-09-24 09:27) [2]Скажем так, надо учесть такой вариант, что пользователь сможет запустить хранимую процедуру, т.е. максимально защититься от пользователя.
А если процедура будет принимать какой-нибудь параметр, тогда пользователь сможет сам его передать туда.
Нужно, наверно, прочитать какую-нибудь системную информацию, на которую пользователь уже не сможет повлить. Вот только какую?
← →
3JIA9I CyKA (2002-09-24 10:18) [3]А нафинг права на неё давать?
← →
KAA (2002-09-24 10:25) [4]Нужно сделать очень хитрые права, с одними параметрами можно запускать хранимую процедуру напрямую, а с другими правами только через специальную процедуру.
Вообщем надо сделать именно так.
Собственно говоря надо узнать, какая процедура была запущена пользователем.
← →
3JIA9I CyKA (2002-09-24 10:26) [5]Ничего умнее APP_NAME() предложить не могу.
← →
KAA (2002-09-24 10:27) [6]опечатка, не с другими правами, а с другими параметрами
← →
KAA (2002-09-24 10:31) [7]APP_NAME() немного не то, мне нужно не имя приложения, а имя запущенной пользователем процедуры.
← →
3JIA9I CyKA (2002-09-24 10:40) [8]Ку?
select object_name(@@procid)
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.10.14;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.007 c