|
Как получить IP клиента ?
|
|||
---|---|---|---|
#18+
Есть проблема у заказчика развернут кластер их ХХХ серверов приложений которые работают с одной базой Oracle 11. Все ходят под одной учеткой. Нужно как то определять и писать в таблицу IP или имя хоста или что то еще , чтобы определить какой из АПП серверов создавал или апдейтил запись в таблице. На стороне клиента это сделать нельзя. Нужно чтобы сама БД это как то фиксила. Такое вообще возможно ? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2022, 16:20 |
|
Как получить IP клиента ?
|
|||
---|---|---|---|
#18+
PSD Есть проблема у заказчика развернут кластер их ХХХ серверов приложений которые работают с одной базой Oracle 11. Все ходят под одной учеткой. Нужно как то определять и писать в таблицу IP или имя хоста или что то еще , чтобы определить какой из АПП серверов создавал или апдейтил запись в таблице. На стороне клиента это сделать нельзя. Нужно чтобы сама БД это как то фиксила. Такое вообще возможно ? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2022, 16:26 |
|
Как получить IP клиента ?
|
|||
---|---|---|---|
#18+
Asmodeus,тригер запускается в контексте пользователя? Не системы? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2022, 12:19 |
|
Как получить IP клиента ?
|
|||
---|---|---|---|
#18+
ProfSD тригер запускается в контексте пользователя? Не системы? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2022, 15:43 |
|
Как получить IP клиента ?
|
|||
---|---|---|---|
#18+
PSD Есть проблема у заказчика развернут кластер их ХХХ серверов приложений которые работают с одной базой Oracle 11. Все ходят под одной учеткой. Нужно как то определять и писать в таблицу IP или имя хоста или что то еще , чтобы определить какой из АПП серверов создавал или апдейтил запись в таблице. На стороне клиента это сделать нельзя. Нужно чтобы сама БД это как то фиксила. Такое вообще возможно ? Имхую: 1. "сама БД пофиксила" - БД - пассивный объект, сама ничего не делает, не возбуждается. 2. SYS_CONTEXT('USERENV','OS_USER'), SYS_CONTEXT('USERENV','IP_ADDRESS'), SYS_CONTEXT('USERENV','HOST') ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2022, 14:54 |
|
Как получить IP клиента ?
|
|||
---|---|---|---|
#18+
Ролг Хупин PSD Есть проблема у заказчика развернут кластер их ХХХ серверов приложений которые работают с одной базой Oracle 11. Все ходят под одной учеткой. Нужно как то определять и писать в таблицу IP или имя хоста или что то еще , чтобы определить какой из АПП серверов создавал или апдейтил запись в таблице. На стороне клиента это сделать нельзя. Нужно чтобы сама БД это как то фиксила. Такое вообще возможно ? Имхую: 1. "сама БД пофиксила" - БД - пассивный объект, сама ничего не делает, не возбуждается. 2. SYS_CONTEXT('USERENV','OS_USER'), SYS_CONTEXT('USERENV','IP_ADDRESS'), SYS_CONTEXT('USERENV','HOST') В результате получим имя учётки, под которой стартует сервер приложений в своей ОС и адрес и имя хоста, на котором данный сервер приложений работает (т.е. определим сессия какого из серверов "кластера их ХХХ серверов приложений" что-то сделала). Чтобы определить в БД конечного пользователя приложения, нужно, чтобы эту информацию сервер приложений каким-то образом БД сообщал. Или, например, как вариант, логировать на сервере приложений, что такой-то его клиент открыл такую-то сессию в БД и уже тогда через SYS_CONTEXT('USERENV','SID') можно будет провести соответствие "сессия = конечный пользователь". Без "помощи" со стороны сервера приложений при заданных вводных ("Все ходят под одной учеткой") в БД определить конечного пользователя не получится никак. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2022, 19:46 |
|
Как получить IP клиента ?
|
|||
---|---|---|---|
#18+
Так, опять я не внимательно прочитал - если вопрос именно в том, "чтобы определить какой из АПП серверов создавал или апдейтил запись в таблице", то предложение Ролг Хупин - это именно то, что нужно. Я имел в виду, что конечного пользователя приложения определить проблематично, но в рамках данной задачи это и не требуется. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2022, 19:59 |
|
|
start [/forum/topic.php?fid=52&fpage=2&tid=1879503]: |
0ms |
get settings: |
19ms |
get forum list: |
5ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
57ms |
get topic data: |
7ms |
get forum data: |
1ms |
get page messages: |
179ms |
get tp. blocked users: |
1ms |
others: | 296ms |
total: | 567ms |
0 / 0 |