Здравствуйте, уважаемые хабровчане и хабровчанки!
Возникла потребность в программе, которая анализирует указанные ей папки на действия пользователей и записывает все в журнал.
Идея отчасти превратилась в жизнь. Я писал на C#, потому что мне так удобно. Разобрался с FileSystemWatcher'ом. При создании файла смотрю по пути SID владельца файла и вроде все прекрасно — узнал кто создал файл, записал в лог.
Но тут возникла загвоздка. Как узнать SID удалившего или записавшего в файл?
Если бы было можно использовать аудит — использовал бы (хотя журнал событий не очень френдли сделан). Перед глазами конкретная задача. Есть мысли как ее решить?
Дак не поставлена же задача. Почему нельзя юзать аудит?
Ну хорошо. Аудит использует те же функции WinAPI, что можете использовать и вы. В торрентах есть архив исходного кода sysinternals. ну посмотрите, как сделан procmon.
Программа Secret Net и ей подобные. Можно приобрести без аппаратной части. Граничит доступ мандатным методом, мониторит все, что скажете, проверяет на целостность, защищает от изменений. www.securitycode.ru/products/secret_net/
Новая 6 версия наверное дорогая, старая 5.1 ничем не хуже для ваших задач.
Точного решения тоже не могу подсказать.
Но! На ум приходит технология, по которой работают антивирусы. Как-бы проксировать любое обращение к файловой системе.