¿Cómo denegar el permiso de eliminación / modificación de un archivo?

2

Quiero negarme la posibilidad de modificar o eliminar un ejecutable.

Cuando .NET Reflector le pregunta si desea actualizar:

ingrese la descripción de la imagen aquí

y elige No, se elimina espontáneamente como retribución:

ingrese la descripción de la imagen aquí

Por eso quiero evitar que pueda Deleteejecutar el ejecutable; como castigo por su castigo.

Traté de negar mi Writepermiso (y negarlo a todo el mundo , y administradores ):

ingrese la descripción de la imagen aquí

Excepto, todavía puedo hacer clic derecho -> Eliminar el archivo ...

¿Cómo niego el permiso de eliminación / modificación a un archivo?

Ian Boyd
fuente
Sí, el acceso de escritura no tiene nada que ver con el permiso de eliminación. Esto parece una forma bastante draconiana de resolver este problema.
surfasb
Estoy sorprendido por un voto negativo. Creo que ser capaz de evitar que algo modifique sus archivos sería una pregunta útil.
Ian Boyd el
@surfasb El acceso de escritura muy bien puede no tener nada que ver con eliminar. Solo incluyo cosas que he intentado porque algunas personas se enojan cuando simplemente hago la pregunta. Y algunas personas darán votos negativos rencorosos si no "demuestro el esfuerzo de investigación".
Ian Boyd
Votar únicamente porque encuentro la pregunta bastante divertida. Luego recordé momentos dolorosos con el instalador de Adobe Flash y de repente me siento menos divertido.
Mark K Cowan

Respuestas:

3

En Windows, es suficiente tener uno de :

  • "Eliminar" en el objeto, o
  • "Eliminar hijo" en su padre

Por lo tanto, un archivo solo se volverá indeleble si niega ambos .

Use icaclspara editar los permisos:

  • Denegar "Eliminar" al archivo:

    icacls Reflector.exe /deny Everyone:(D)
    
  • Denegar "Eliminar hijo" a la carpeta:

    icacls . /deny Everyone:(DC)
    

(Probado en Windows XP).

Gravedad
fuente
Negar el Modifypermiso también elimina el Executepermiso; y todavía puedo eliminar el archivo!
Ian Boyd
Como dije, "Es posible que también deba negar" Eliminar elementos "en la carpeta" ... Lo que también se puede hacer con icacls.
Grawity
En el lado negativo que negaría la capacidad de eliminar otros elementos en la carpeta. Dado que no parece estar funcionando, supongo que no es posible negar la capacidad de eliminar un archivo; las eliminaciones deben realizarse en carpetas, en lugar de archivos.
Ian Boyd
Edite su respuesta para indicar que no se puede hacer, "Pero aquí hay algunas alternativas que podrían ser útiles", y obtendrá la aceptación.
Ian Boyd