powered by simpleCommunicator - 2.0.30     © 2024 Programmizd 02
Map
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Как получить IP клиента ?
7 сообщений из 7, страница 1 из 1
Как получить IP клиента ?
    #40135179
PSD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть проблема у заказчика развернут кластер их ХХХ серверов приложений которые работают с одной базой Oracle 11.

Все ходят под одной учеткой.

Нужно как то определять и писать в таблицу IP или имя хоста или что то еще , чтобы определить какой из АПП серверов создавал или апдейтил запись в таблице.
На стороне клиента это сделать нельзя. Нужно чтобы сама БД это как то фиксила.

Такое вообще возможно ?
...
Рейтинг: 0 / 0
Как получить IP клиента ?
    #40135181
Asmodeus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PSD
Есть проблема у заказчика развернут кластер их ХХХ серверов приложений которые работают с одной базой Oracle 11.

Все ходят под одной учеткой.

Нужно как то определять и писать в таблицу IP или имя хоста или что то еще , чтобы определить какой из АПП серверов создавал или апдейтил запись в таблице.
На стороне клиента это сделать нельзя. Нужно чтобы сама БД это как то фиксила.

Такое вообще возможно ?
Триггер с sys_context ?
...
Рейтинг: 0 / 0
Как получить IP клиента ?
    #40135259
ProfSD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Asmodeus,тригер запускается в контексте пользователя? Не системы?
...
Рейтинг: 0 / 0
Как получить IP клиента ?
    #40135280
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ProfSD
тригер запускается в контексте пользователя? Не системы?
Клон, любой триггер запускается в какой-то сессии.
...
Рейтинг: 0 / 0
Как получить IP клиента ?
    #40135374
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PSD
Есть проблема у заказчика развернут кластер их ХХХ серверов приложений которые работают с одной базой Oracle 11.

Все ходят под одной учеткой.

Нужно как то определять и писать в таблицу IP или имя хоста или что то еще , чтобы определить какой из АПП серверов создавал или апдейтил запись в таблице.
На стороне клиента это сделать нельзя. Нужно чтобы сама БД это как то фиксила.

Такое вообще возможно ?


Имхую:
1. "сама БД пофиксила" - БД - пассивный объект, сама ничего не делает, не возбуждается.

2.
SYS_CONTEXT('USERENV','OS_USER'),
SYS_CONTEXT('USERENV','IP_ADDRESS'),
SYS_CONTEXT('USERENV','HOST')
...
Рейтинг: 0 / 0
Как получить IP клиента ?
    #40135405
ASNexus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ролг Хупин
PSD
Есть проблема у заказчика развернут кластер их ХХХ серверов приложений которые работают с одной базой Oracle 11.

Все ходят под одной учеткой.

Нужно как то определять и писать в таблицу IP или имя хоста или что то еще , чтобы определить какой из АПП серверов создавал или апдейтил запись в таблице.
На стороне клиента это сделать нельзя. Нужно чтобы сама БД это как то фиксила.

Такое вообще возможно ?


Имхую:
1. "сама БД пофиксила" - БД - пассивный объект, сама ничего не делает, не возбуждается.

2.
SYS_CONTEXT('USERENV','OS_USER'),
SYS_CONTEXT('USERENV','IP_ADDRESS'),
SYS_CONTEXT('USERENV','HOST')

В результате получим имя учётки, под которой стартует сервер приложений в своей ОС и адрес и имя хоста, на котором данный сервер приложений работает (т.е. определим сессия какого из серверов "кластера их ХХХ серверов приложений" что-то сделала).

Чтобы определить в БД конечного пользователя приложения, нужно, чтобы эту информацию сервер приложений каким-то образом БД сообщал. Или, например, как вариант, логировать на сервере приложений, что такой-то его клиент открыл такую-то сессию в БД и уже тогда через SYS_CONTEXT('USERENV','SID') можно будет провести соответствие "сессия = конечный пользователь".

Без "помощи" со стороны сервера приложений при заданных вводных ("Все ходят под одной учеткой") в БД определить конечного пользователя не получится никак.
...
Рейтинг: 0 / 0
Как получить IP клиента ?
    #40135406
ASNexus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так, опять я не внимательно прочитал - если вопрос именно в том, "чтобы определить какой из АПП серверов создавал или апдейтил запись в таблице", то предложение Ролг Хупин - это именно то, что нужно. Я имел в виду, что конечного пользователя приложения определить проблематично, но в рамках данной задачи это и не требуется.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Как получить IP клиента ?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]