|
|
|
Перехват запроса.
|
|||
|---|---|---|---|
|
#18+
Hi all! А можно ли средствами сервера перехватить запрос определенной сессии, исправить его и отдать на обработку. Или перед тем как данные уйдут клиенту их несколько изменить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 13:29 |
|
||
|
Перехват запроса.
|
|||
|---|---|---|---|
|
#18+
Napishi svoj listener. Dumaju, shto tak sdelatj budjet prosche chem haknutj kernel Oracle RDBMS'a. Drugoi variant - proslushivaj setj i menjai vsjo na urovnje setji. Vsjo ravno legche budet napisatj svoj listener. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 13:44 |
|
||
|
Перехват запроса.
|
|||
|---|---|---|---|
|
#18+
Можно наверное сделать вьюху вместо таблици (к которой идет запрос). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 13:51 |
|
||
|
Перехват запроса.
|
|||
|---|---|---|---|
|
#18+
2 Delerium Шутник однако. 2 no name Запрос идет к системной вьюхе, что либо менять - может боком выйти. Пробовал навесить политику (мне вообще-то надо некоторые строки убрать) не получается. Можно даже на запрос к этой вьюхе возвращать пустое множество, может есть идеи? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 14:31 |
|
||
|
Перехват запроса.
|
|||
|---|---|---|---|
|
#18+
Давай конкретнее. Я вчера как раз подобный вопрос решил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 14:35 |
|
||
|
Перехват запроса.
|
|||
|---|---|---|---|
|
#18+
2 Scott Tiger Все предельно конкретно: Отвратная прога лезет в v_$session что бы определить сколько ее экземпляров работают с базой. Если кол-во юзеров больше чем кол-во лицензий - сам понимаешь. А поскольку я сильно не согласен с ценовой политикой, проводимой производителем этой прилады, надо ее как-то обламывать. Совершенно без проблем хакнул екзешник, но несколько лицензий все таки есть, поэтому есть подписка на новые версии, а с каждой новой версией разбираться с екзешником... Надо решать проблему радикально! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 14:48 |
|
||
|
Перехват запроса.
|
|||
|---|---|---|---|
|
#18+
2 Mich Проще переопределить v_$session - это возможно, хотя условие where будет весьма замысловатым. Но в следующей версии разработчики могут делать запрос в sys.v$session, и тогда хакерство ядра оракла или написание listener станет суровой необходимостью. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 14:52 |
|
||
|
Перехват запроса.
|
|||
|---|---|---|---|
|
#18+
Bolshe njebudu shutitj: Kak eta proga podkljuchajetsja k aze? Kak sys ilji system? Togda ploha. Jeslji podugomu, togda prosta sozdaj synonym: SQL> create synonym v_$session for a; Synonym created. SQL> select * from v_$session; A ---------- 1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 14:53 |
|
||
|
Перехват запроса.
|
|||
|---|---|---|---|
|
#18+
P.S Он обращяется к sys.v_$session, так что фейковая вьюшка в схеме вопрос не решит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 14:56 |
|
||
|
Перехват запроса.
|
|||
|---|---|---|---|
|
#18+
Как в v$session определяется кол-во запущенных прилад ? по колонке PROGRAM ? А экзюк переименовать ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 14:56 |
|
||
|
Перехват запроса.
|
|||
|---|---|---|---|
|
#18+
А что такое sys.v_$session? Это самая обычная вьюшка, она не встроена в ядро, как sys.v$session. Ее запросто можно переделать под свои нужды. Я все время забавляюсь с v_$parameter, чтобы видеть все параметры, в том числе и начинающиеся с '_'. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 15:01 |
|
||
|
Перехват запроса.
|
|||
|---|---|---|---|
|
#18+
Если программа лезет к sys.v_$session запросом вида select count(*) from sys.v_$session where program='лицензионна программа' то во вьюшке можно столбец program заменить на decode(program,'лицензионна программа','ха-ха-ха',program) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 15:16 |
|
||
|
Перехват запроса.
|
|||
|---|---|---|---|
|
#18+
2 ora600 Нет. select count ( *) from sys.v_$session where USER# =UID and STATUS <> 'KILLED' У нее есть табличка, где прописаны все юзеры и их пароли (в контексте приложения, в Oracle они не существуют), их количество ограничеввается лицензией, проверяется непонятно как, но это не в тему. Прога не дает двум псевдоюзерам работать в базе. Это предлагаю принять за данность и попробовать не дать программе определить сколько уникальных псевдоюзеров работает сейчас. Не слишком заморочил?.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 15:19 |
|
||
|
Перехват запроса.
|
|||
|---|---|---|---|
|
#18+
Peresozdaj view v_$session tak: create or replace view v_$session as select * from v$session where (case when user='USERNAME' then 1 else 0) = 0; V mestje 'USERNAME' postavj username katorij izpoljzujet programma pri podkljuchenjije. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 15:36 |
|
||
|
Перехват запроса.
|
|||
|---|---|---|---|
|
#18+
Izvinjajusj, statement dolzhen bitj takim: create or replace view v_$session as select * from v$session where (case when user='USERNAME' then 1 else 0 end) = 0; Propustil END :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 15:40 |
|
||
|
Перехват запроса.
|
|||
|---|---|---|---|
|
#18+
to Delerium А это не повлияет на работу базы, ведь вью тогда не будет поставлять реальной информации? Другими словами, используется ли вью v_$session только для предоставления информации пользователям? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 15:44 |
|
||
|
Перехват запроса.
|
|||
|---|---|---|---|
|
#18+
2 Delerium Не понял. И что будет? Тестовый сервер пару часов назад умер, а на production пробовать то что не понимаю выше моих сил. А как насчет других прилад использующих эту же view? Можно поподробнее? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 15:46 |
|
||
|
Перехват запроса.
|
|||
|---|---|---|---|
|
#18+
Potomu i ja vstavil takoj "where" v zaprose, katorij menjajet povedenjije view'a tolka jeslji k view'u obraschajetsja konkretnij user. Mozhno idtji i dalzhe i peredelatj v_$session tak, shtobi pomenjalsja tolko konkretnij UID v etom view'e. A mnje ljenj delatj takoj skript :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 15:48 |
|
||
|
Перехват запроса.
|
|||
|---|---|---|---|
|
#18+
Mich, Tvoja apliacija podkljuchajetsja k baze izpoljzuja konkretnij username/password, nje tak lji? Jeslji tak peredelatj view v_$session, togda tolko dlja etovo usera select count(*) from sys.v_$session budet 0 a dlja drugih userov vsjo budet kak obichno. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 15:55 |
|
||
|
Перехват запроса.
|
|||
|---|---|---|---|
|
#18+
OK, подумаю. А пока предложение перенсти дисскусиию на понедельник, ибо рабочий день у меня закончился, а dial-up из дома в провинции это что-то. 2400 максимум. Да лучше не заморачиваться! На все предложения постараюсь ответить, а пока прошу меня извинить, дамы и господа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 16:17 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=32149044&tid=1990807]: |
0ms |
get settings: |
6ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
234ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
62ms |
get tp. blocked users: |
2ms |
| others: | 201ms |
| total: | 529ms |

| 0 / 0 |
