¿Cómo saber qué usuario elimina un archivo en Windows NT?
Fue una pregunta que me plantié hace un tiempo, y Jeremías Veloso, usuario de nuestro grupo en Facebook también tiene la misma inquietud, porque quiere implementar esta especie de control en su trabajo.
Creo que es importantísimo habilitar esta opción en carpetas críticas (sobre todo si son compartidas) en los servidores de datos.
Lamentablemente no tengo capturas de imágenes, pero aquí va la explicación para todos, y en especial para Jeremías, intentando que sea lo más clara y didáctica posible
Todo esto se hace en el servidor.
Primero, buscamos en My Computer la carpeta que queremos supervisar.
Clic derecho sobre ella, opción Propiedades. Luego, aleta Security (sí, el NT está en inglés en mi trabajo). En esta aleta, aparecen 3 apartados y uno de ellos es Auditing (algo así como Auditar). Se presiona ese botón y en la nueva ventana que se abrirá (Directory Auditing) se debe agregar al usuario o grupo de usuario que se estará vigilando sobre esa carpeta.
Luego, volviendo a la ventana anterior, tenemos estas dos opciones:
- Replace auditing on subdirectories.
- Replace auditing on existing files.
Se puede seleccionar o no cualquiera de ellas, o las dos, dependiendo de lo que se quiera hacer. En mi caso, solamente escogí la segunda, porque no hay más subdirectorios dentro de esta.
Ahora, se selecciona cuál es la acción a supervisar. Las opciones son:
- Read
- Write
- Execute
- Delete
- Change permissions
- Take ownership
y se puede escoger que registre el evento si la opción fue exitosa (Sucess) o fallida (Failure). En mi caso, escogí que registrara cada eliminación exitosa (opción Delete y Sucess).
Perfecto, ya tenemos hecha la primera parte ^^
Ahora ¿cómo vemos este registro de acciones sobre esta carpeta?
Como algunos ya estarán sospechando, en el Visor de Sucesos o Event Viewer.
Dentro del Event Viewer, en la opción Security Log, se reflejará cada eliminación de archivo exitoso dentro de la carpeta seleccionada, como un Event ID 560, con categoría Object Access, mostrando exactamente qué usuario fue el que realizó la acción (siempre y cuando dicho usuario quepa dentro de la selección de usuario o grupo a auditar seleccionado anteriormente) y la fecha y hora en que lo hizo. Evidentemente, si se selecciona que se auditen otras acciones, habrá que buscar por otro Event Id (en mi caso, me servía el 560).
Espero les sea de tanta utilidad como lo fue para mí ^^
P.D.: Seguramente esta opción es igual en otros sistemas operativos de servidores, como Windows 2000 Server, o 2003, pero fue probado en Windows NT.
wenisimo… valido para 2003 server???
@Jorge, no he tenido la oportunidad de probarlo en 2003, pero me imagino que sí. ¡Hay que probar no más!