контролировать доступ к файлам / каталогам в C # - PullRequest
7 голосов
/ 24 августа 2011

Я хочу разработать приложение, которое регистрирует файлы / каталоги, к которым получен доступ на машине.

например, я иду в D: \ и в папку документов и открываю файл слова.Я хочу, чтобы мое приложение создавало журнал в следующем формате:

  1. D: \ Opened
  2. D: \ Documents Opened
  3. D: \ documents \ secret.docx Открыт

Я использовал FileSystemWatcher для достижения другого типа активности файловой системы, но не смог получить события для доступа к этому.

Ответы [ 3 ]

3 голосов
/ 24 августа 2011

звучит так, как будто вы хотите создать программу FileMon, такую ​​как sys internals. На их сайте Марк рассказывает о том, как работает FileMon, чтобы вы могли получить вдохновение, прочитав статью.

также см. Здесь: Как вы контролируете доступ к файлам и изменениям на файловом сервере по имени пользователя?

1 голос
/ 24 августа 2011

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

0 голосов
/ 24 августа 2011

Наиболее приемлемым вариантом является использование драйвера фильтра файловой системы. Такой драйвер дает вам точный контроль над всеми запросами, поступающими в конкретную файловую систему. Единственная проблема этого подхода - сложность разработки такого драйвера в режиме ядра.

...