Comprender el 'Acceso denegado' para que se puedan revertir los permisos: icacls y takeown

Comprender el 'Acceso denegado' para que se puedan revertir los permisos: icacls y takeown
  • Antes de tomar posesión de archivos y carpetas, me gustaría saber cómo ver los permisos actuales para poder revertirlos.
  • Recibo un mensaje de "Acceso denegado" para ver o guardar permisos con símbolo del sistema elevado para la ubicación: C:\ProgramData\Microsoft\Windows\SystemData en el entorno de Windows 10.
  • Parece que es posible que primero deba tomar posesión, luego puedo ver los permisos y usar algo como el comando icacls 'reset' para solucionarlo después.

Si intento ver los permisos:

C:\Windows\system32>icacls "C:\ProgramData\Microsoft\Windows\SystemData"
C:\ProgramData\Microsoft\Windows\SystemData: Access is denied.
Successfully processed 0 files; Failed processing 1 files

Si intento guardar un archivo ACL:

C:\Windows\system32>icacls C:\ProgramData\Microsoft\Windows\SystemData /save "C:\SystemData.acl" /t
C:\ProgramData\Microsoft\Windows\SystemData: Access is denied.
Successfully processed 0 files; Failed processing 1 files

en la respuesta a'Comprender cómo utilizar Icals y Takeown'el propietario de la carpeta era NT SERVICE\TrustedInstaller, que de hecho puede ser un estándar en Windows 10, aunque sólo estoy adivinando.

¿Debería usar takeown e icals? Averigüe los permisos y luego use el comando reset.

takeown /f C:\ProgramData\Microsoft\Windows\SystemData /r
icacls C:\ProgramData\Microsoft\Windows\SystemData /grant "%USERDOMAIN%\%USERNAME%":(F) /t
Make Changes
icacls C:\ProgramData\Microsoft\Windows\SystemData /setowner "NT SERVICE\TrustedInstaller" /t
icacls C:\ProgramData\Microsoft\Windows\SystemData /reset /t

Del mismo modo, con la ACL, sería necesario asumir la propiedad antes de crearla, ¿o hay alguna solución alternativa?

Lectura:

Respuesta1

Cómo ver los permisos de la carpeta de acceso denegado en Windows 10

Supuse que el sistema sería un usuario que tendría acceso a esta carpeta, así que siguiendo ese pensamiento encontré una solución para ejecutar el símbolo del sistema como sistema.

Ver - Entonces, ¿cómo se ejecuta CMD.exe en la cuenta del sistema local?

  1. DescargarPStoolsde SysInternals, Microsoft.
  2. Ejecute CMD como administrador, navegue a la carpeta psexec.exe y psexec64.exe y ejecute lo siguiente:
psexec -i -s cmd.exe 

o si quieres 64 bits...

psexec64 -i -s cmd.exe
  1. Ahora se ha abierto una ventana del símbolo del sistema como sistema.

  2. Ahora podemos ver los permisos de la carpeta...

icacls C:\ProgramData\Microsoft\Windows\SystemData

C:\ProgramData\Microsoft\Windows\SystemData 
                                            NT SERVICE\TrustedInstaller:(F)
                                            NT AUTHORITY\SYSTEM:(F)
  1. Además, ahora se puede guardar y restablecer una ACL comodescrito aquí
icacls C:\ProgramData\Microsoft\Windows\SystemData /save "C:\SystemData.acl" /t
icacls C:\ProgramData\Microsoft\Windows /restore "C:\SystemData.acl"
  1. En el símbolo del sistema de administración estándar, no en el sistema, todavía tengo que averiguar cómo restaurar la propiedad de esta manera después de usar Takeown. Actualmente se pueden restaurar los permisos de la solución ACL o del símbolo del sistema del sistema anterior. Sin embargo, he descubierto que uno puede simplemente ejecutar un script por lotes a través del programador de tareas como Sistema, entonces no es necesario cambiar los permisos.

Lectura:

información relacionada