Necesito saber qué archivo eliminado por el usuario en el sistema de archivos del código C#. Sólo una idea es utilizar la auditoría, pero parecen ser muy lento ...¿Cómo puedo obtener el usuario que eliminó el archivo?
Respuesta
Usted puede utilizar el evento FileSystemWatcher.Deleted
de captura, se eliminan pasando en el sistema de archivos.
Dependiendo de la aplicación, en ese momento también podrá averiguar qué usuario causó este evento (no es parte de FileSystemEventArgs
).
, de hecho. Estoy usando Watcher, pero cuando trato de obtener un nombre de usuario como este: System.Security.AccessControl.FileSecurity sec = new FileSecurity (Path, System.Security.AccessControl.AccessControlSections.Owner); return sec.GetOwner (typeof (System.Security.Principal.NTAccount)). Valor; arroja una excepción debido a que no puede determinar el usuario – user295518
@user: Pruebe 'WindowsIdentity.GetCurrent(). Name' http://msdn.microsoft.com/en-us/library/system.security.principal.windowsidentity. aspx –
No sé si esto se puede recuperar del sistema de archivos, pero una forma posible es usar el objeto de FileSystemWatcher para desencadenar un evento en Eliminado. La desventaja es que necesita tener la aplicación Watcher ejecutándose todo el tiempo. Una ventaja es que puede controlar solo una carpeta específica si es factible.
parece que FileSystemWatcher no proporciona información sobre el usuario que eliminó el archivo ... – user295518
No, pero pensé que tal vez se podía acceder a través del archivo. Tendría que obtener el usuario que cambió el archivo, no el propietario. Pero de todos modos, el archivo probablemente ya está eliminado entonces. Es por eso que obtienes la excepción, supongo. –
¿Tal vez podría averiguar cómo acceder a la información de archivo del archivo eliminado desde este código fuente? http://ntfsundelete.com/downloads/ –
- 1. Lion update eliminó el usuario 'postgres'. Cómo restaurarlo?
- 2. Mercurial: determine dónde se eliminó el archivo.
- 3. ¿cómo puedo obtener el ícono de archivo?
- 4. El archivo SharedPreferences no se eliminó en la desinstalación
- 5. cómo puedo obtener el padre del control de usuario wpf
- 6. ¿Cómo puedo obtener el directorio de usuario actual?
- 7. ¿Cómo puedo obtener el usuario actual en Liferay?
- 8. Detectar si se eliminó el control
- 9. git recuperar solo archivo que se eliminó durante una fusión
- 10. ¿Cómo comprobar que el usuario está "conectado"?
- 11. cómo obtener el archivo .mobileprovision y el archivo .app
- 12. ¿Cómo obtener el GUID del usuario actual?
- 13. ¿Dónde puedo obtener el archivo hgweb.cgi?
- 14. ¿Cómo puedo obtener el tipo MIME de un InputStream de un archivo que se está cargando?
- 15. ¿Cómo ves qué confirmación eliminó un archivo del repositorio?
- 16. ¿Cómo puedo obtener el nombre del usuario que ejecuta mi script de Perl?
- 17. ¿Cómo puedo obtener el nombre de usuario de la persona que está ejecutando mi programa?
- 18. ¿Cómo puedo obtener el contenido del archivo cargado en php?
- 19. ¿Cómo puedo obtener SecKeyRef desde el archivo DER/PEM
- 20. ¿Cómo puedo obtener el nombre de archivo de request.FILES?
- 21. ¿Cómo puedo obtener el modelo filtrado?
- 22. ¿Cómo puedo obtener el CollectionView que se define en XAML
- 23. ¿Puedo crear un archivo de gitignore específico para el usuario?
- 24. ¿Cómo puedo obtener el delegado?
- 25. GDB adjuntándose a un proceso donde se eliminó el ejecutable
- 26. ¿Cómo puedo obtener el puerto que escucha un servicio WCF?
- 27. cómo obtener el archivo fuente desde el archivo apk
- 28. ¿Cómo puedo obtener el usuario real uid si el programa se ejecuta con sudo?
- 29. ¿Cómo puedo obtener el archivo que tengo abierta en vim para mostrar en mi pestaña iTerm
- 30. ¿Cómo puedo averiguar cuándo se eliminó una parte de un archivo en git?
¿De qué es esta "auditoría" de la que habla? – BlueMonkMN
@BlueMonkMN: Eso podría ser esto: auditoría de acceso NTFS - http://support.microsoft.com/kb/310399; esa parece ser la opción más simple; después de todo, esto se acerca más al núcleo que al espacio de usuario, por lo que debería capturar todos los eventos de acceso a archivos (no estoy seguro sobre el acceso al disco de bajo nivel, pero probablemente no sea necesario aquí). Sin embargo, no tengo experiencia en ajustarlo. – Piskvor
No quiero usar la auditoría porque tendré muchos archivos y realmente enviará correo no deseado al registro del sistema – user295518