Конференция "Базы" » Узнать ip адрес клиента из базы данных. Interbase 7.5
 
  • noob_one (04.09.09 10:13) [0]
    Собственно есть задача ведения логов кто, что, когда и, главное, откуда сделал.
    Есть ли хоть какая-то возможность получить ip клиента, "находясь" в самой базе?

    У сервера эта информация есть, и ibconsole ее показывает.
    Клиенты возможности править нет - они разные, есть сторонние.
  • Сергей М. © (04.09.09 11:03) [1]
    Ну и что, предположим, тебе даст полученный таким образом адрес анонимного прокси-сервера, находящегося на задворках Тырнета, через который к твоему серверу подключился злонамеренный Вася Пупкин из соседней комнаты ?)

    И откуда возьмется IP-адрес, если тот же Вася подключился к серверу по NetBIOS без посредничества TCP/IP ?
  • Сергей М. © (04.09.09 11:09) [2]
  • noob_one (04.09.09 12:08) [3]
    Спасибо

    Я так понимаю запрос будет таким.

    select ta.TMP$USER_IP_ADDR from TMP$TRANSACTIONS ts
    inner Join TMP$ATTACHMENTS ta on ts.tmp$attachment_id=ta.tmp$attachment_id
    where ts.tmp$transaction_id=

    А как узнать номер текущей транзакции?
  • Виталий Панасенко (04.09.09 12:41) [4]
    в ФБ есть CURRENT_TRANSACTION
     Function:
       Returns system identifier of the active connection/transaction,
       i.e. a connection/transaction, in which context the given SQL
       statement is executed.

     Author:
       Dmitry Yemanov <yemanov@yandex.ru>

     Syntax rules:
       CURRENT_CONNECTION / CURRENT_TRANSACTION
  • Виталий Панасенко (04.09.09 12:42) [5]
    Но у вас же IB.. фиг его знает..:-)
 
Конференция "Базы" » Узнать ip адрес клиента из базы данных. Interbase 7.5
Есть новые Нет новых   [134473   +28][b:0][p:0]