我正在开发一个可以在几个 Windows Server 2008 机器上运行的应用程序。该应用程序将监视共享目录中的文件更改并将它们报告给我。我目前正在使用 FileSystemWatcher 类,但这确实支持检索与生成的事件关联的活动目录用户名。我已经研究了一些解决方案,但我不确定从哪里开始。这是我的一些选择。
监视事件日志中的安全事件。我真的不喜欢这个解决方案 Get Username of an Accesed File
创建文件系统过滤器驱动程序。这将允许我实时检测所有类型的文件操作,但我没有看到任何关于检索相关用户信息的内容。这似乎是最有希望的解决方案。
我还没有看到其他人这样做,但我认为可以挂钩“服务器”服务(我相信这负责网络共享交互)并尝试退出文件系统操作。我真的很想避免这种情况。
欢迎使用 C#/C++ 中的解决方案。