Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.10.14;
Скачать: CL | DM;

Вниз

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;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.013 c
7-45593
Mon@rchP
2002-08-04 12:22
2002.10.14
получение системной информации для всех виндовых систем


1-45409
Tpol
2002-10-02 11:34
2002.10.14
TreeView


4-45657
dr.karter
2002-08-28 20:18
2002.10.14
Запуск программ


1-45447
Th
2002-10-03 18:05
2002.10.14
Перенос слов в TLabel.Caption


1-45417
Natangelina
2002-10-03 13:41
2002.10.14
Закрытие формы