Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2007.04.15;
Скачать: [xml.tar.bz2];

Вниз

Узнать логин соединения чужого приложения на этой же машине   Найти похожие ветки 

 
Vlad Oshin ©   (2007-01-22 11:47) [0]

Т.е., пользователь запустил чужое приложение, залогинился в нем, а оно(чужое приложение) вызывает мой .ехе, мне надо чтоб он(мой *.ехе) знал как залогинились

Все было хорошо, пока отчеты ничего не меняли в БД (коннектился под sysadmin), теперь, кроме отчета, надо чтоб писалось кто этот отчет затребовал.


 
evvcom ©   (2007-01-22 12:12) [1]

> [0] Vlad Oshin ©   (22.01.07 11:47)
> а оно(чужое приложение) вызывает мой .ехе

надо, чтобы это чужое приложение умело информировать об этом твое, а твое эту информацию умело понимать. В противном случае все достаточно сложно.


 
Vlad Oshin ©   (2007-01-22 13:18) [2]


> evvcom ©  

дык было б так - не было б проблем и вопроса...
Свои родные отчеты оно понятно как-то информирует, а как - не понятно.

Я просто слышал, что на сервере сохраяется инф-ция о соединениях, в том числе о машине, и вот если запросить ее и сравнить с текущей машиной, может и получится.

Вопрос тогда такой: Это правда? Как спросить эту инф-цию?


 
clickmaker ©   (2007-01-22 13:45) [3]


> Я просто слышал, что на сервере сохраяется инф-ция о соединениях,
> в том числе о машине

в папке LOG лежат файлы ERRORLOG - ERRORLOG.N, там могут быть записи типа
logon     Login succeeded for user "sa". Connection: Non-Trusted.
если включен аудит
но данных о машине нет.
Данные о машине можно получить только из master..sysprocesses, но пока жив коннект


 
Vlad Oshin ©   (2007-01-22 13:50) [4]


> clickmaker ©   (22.01.07 13:45) [3]


> Данные о машине можно получить только из master..sysprocesses,
>  но пока жив коннект

при первом приближении...а что.. можно и так!
спасибо,


 
Павел Калугин ©   (2007-01-22 14:15) [5]

> [0] Vlad Oshin ©   (22.01.07 11:47)

для текущего логина suser_sname()
но у тебя ситуация веселее, как я понял
в базе тлпа юзеров
кто-то жмет капу и запускается ТВОЕ приложение и лезет в базенку под СОБСТВЕННЫМ логином так?
тогда это, простите, порнография.
Если же оба приложения используют подключение с Windows Autentification то есть логин в базу идет с данными пользователя домена, то тогда suser_sname() спасет.

иначе - надо из основного приложения в твое передавать логин и пароли и с этими данными твое приложение должно лезть в базу.


 
Ega23 ©   (2007-01-22 14:17) [6]

Enterprise Manager -> Server -> Management -> Current Activity -> ProcessInfo
Это то, что master..sysprocesses, посмореть "вживую"


 
Vlad Oshin ©   (2007-01-22 14:24) [7]


> кто-то жмет капу и запускается ТВОЕ приложение и лезет в
> базенку под СОБСТВЕННЫМ логином так?
> тогда это, простите, порнография.

именно так :)
а теперь сделаю так:

под правами админа к master
SELECT  loginame from sysprocesses where hostname="этотРС" and program_name="та_самая_программа" order by login_time desc

и под правами loginame к нужной базе.


> Если же оба приложения используют подключение с Windows
> Autentification то есть логин в базу идет с данными пользователя
> домена, то тогда suser_sname() спасет.

нет, это не так. Авторизация сервером
Юзеры только утром включают свои компы, потом прыгают от машины к машине.


> иначе - надо из основного приложения в твое передавать логин
> и пароли и с этими данными твое приложение должно лезть
> в базу.

боюсь не станут мне говорить как там переается у них...


 
evvcom ©   (2007-01-22 14:31) [8]

> [7] Vlad Oshin ©   (22.01.07 14:24)
> боюсь не станут мне говорить как там переается у них...

а у них тоже внешние exe запускаются для этого?


 
Ega23 ©   (2007-01-22 14:37) [9]


> and program_name="та_самая_программа"


Вот эта штука не всегда отработает. Нужно явным образом имя программы указывать в коннекте.
Я сейчас как раз над данным вопросом работаю...


 
Vlad Oshin ©   (2007-01-22 14:37) [10]


> Ega23 ©   (22.01.07 14:17) [6]

накатал свой просмотрщик баз, очень удобно.
можно пару баз выбрать(с системными таблицами) (надо бы три-четыре поставить было - приходится часто вторую копию запускать :))
Выбираешь базу, там список таблиц, выбираешь таблу, смотришь. можно отредактировать, если уверен :)
парочка мемо для написания запросов, соответственно к той же базе или к другим, в том числе не MS sql
и главное - все максимум за пару часов


 
Vlad Oshin ©   (2007-01-22 14:40) [11]


> evvcom ©   (22.01.07 14:31) [8]
> > [7] Vlad Oshin ©   (22.01.07 14:24)
> > боюсь не станут мне говорить как там переается у них..
> .
>
> а у них тоже внешние exe запускаются для этого?

да. У них штук 30 ехе лежит в каталоге для этого дела. Иногда присылают новые. Что не устраивает наших - я пишу. Я тебе пытался это в пятницу объяснить :)


> Ega23 ©   (22.01.07 14:37) [9]

у них прописано, видимо. Всегда показывает потому что


 
Ega23 ©   (2007-01-22 14:43) [12]


> у них прописано, видимо. Всегда показывает потому что
>


У меня складывается впечатление, что это у API-шного ADOConnection, в делфи-обёртке я этого почему-то не вижу...
Сейчас смотрю, может в свойствах что не так?


 
Ega23 ©   (2007-01-22 14:56) [13]


> У меня складывается впечатление, что это у API-шного ADOConnection,
>  в делфи-обёртке я этого почему-то не вижу...
> Сейчас смотрю, может в свойствах что не так?
>


Короче, надо TADOConnection.ConnectionObject свойства ковырять


 
evvcom ©   (2007-01-22 14:57) [14]

> [11] Vlad Oshin ©   (22.01.07 14:40)
> У них штук 30 ехе лежит в каталоге для этого дела.

Вместо одного из них подсовываешь свой, а в нем делаешь запись в лог. Сначала параметров, переданных в командной строке. Если нет ничего, то дальше думаешь, например, сообщение WM_COPYDATA ловишь, опять нет - все сообщения>WM_USER и т.д. В общем случае может получиться

> [1] evvcom ©   (22.01.07 12:12)
> все достаточно сложно.


 
Павел Калугин ©   (2007-01-22 15:24) [15]

> [7] Vlad Oshin ©   (22.01.07 14:24)
> боюсь не станут мне говорить как там переается у них...

а они и не должны говорить.
Твое приложение дергают? от и будьте любезны параметрами передать. Иначе - не будет вам счастья


 
Vlad Oshin ©   (2007-01-23 17:09) [16]


> Вместо одного из них подсовываешь свой, а в нем делаешь
> запись в лог. Сначала параметров, переданных в командной
> строке. Если нет ничего, то дальше думаешь, например, сообщение
> WM_COPYDATA ловишь, опять нет - все сообщения>WM_USER и
> т.д. В общем случае может получиться

уфф ...
Сделал. Нифига.
А чем черт ни шутит - запустил файлмон, регмон...
и в итоге, оказалось, что эти пип-пип-пип данными обменивались через текстовый файл в директории основной программы!

как то так и файл то называется ~data.ask :)



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2007.04.15;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.49 MB
Время: 0.047 c
15-1174221396
Redwwq
2007-03-18 15:36
2007.04.15
Связные списки


2-1174909065
bagos
2007-03-26 15:37
2007.04.15
stringgrid


15-1174373137
Чапаев
2007-03-20 09:45
2007.04.15
А ты уже обновил клаву?


2-1174656400
niko_
2007-03-23 16:26
2007.04.15
Сравнение двух блоков памяти


2-1174637885
Konst5719
2007-03-23 11:18
2007.04.15
DeleteString





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский