Seguro que todos, en alguna ocasión habréis tenido que comprobar, que los permisos de acceso que tiene configurados un árbol de carpetas de un servidor de ficheros están correctamente definidos.
Esta tarea, casi en el 100% de las veces se tiene que realizar, porque dicho árbol de carpetas no lo hemos creado nosotros mismos y queremos estar totalmente seguros que nuestro predecesor ha realizado correctamente su trabajo.
Esta tarea, casi en el 100% de las veces se tiene que realizar, porque dicho árbol de carpetas no lo hemos creado nosotros mismos y queremos estar totalmente seguros que nuestro predecesor ha realizado correctamente su trabajo.
La manera más sencilla de poder comprobar los permisos de acceso que tiene cada carpeta que es compartida en nuestros servidores de ficheros, es listar el árbol entero a un archivo de texto.
Finalizada la ejecución del comando encontraremos en la raíz de nuestro disco c:\, el archivo ntfs_permisos_folder.csv. En su interior, tendremos nuestro lista de carpetas con sus permisos de seguridad para cada usuario.
Espero os sea de utilidad.
También, encontrareis en nuestro canal de YouTube, el vídeo tutorial donde realizamos un listado de todas las carpetas compartidas junto con sus permisos a un archivo CSV.
Podéis acceder y suscribiros al canal de Youtube de Pantallazos.es en el enlace que mostramos a continuación:
https://www.youtube.com/c/pantallazoses
Podéis acceder y suscribiros al canal de Youtube de Pantallazos.es en el enlace que mostramos a continuación:
Para realizar esta operación, usaremos el comando que mostramos a continuación. En él, sustituiremos la carpeta c:\DATOS por el nombre de nuestra carpeta del servidor de ficheros.
Get-Childitem -path "C:\datos" -recurse | Where-Object {$_.PSIsContainer} | Get-ACL| Select-Object Path -ExpandProperty Access | Export-CSV "C:\ntfs_permisos_folder.csv" -NoTypeInformation
"Path","FileSystemRights","AccessControlType","IdentityReference","IsInherited","InheritanceFlags","PropagationFlags"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\COMUN","FullControl","Allow","Todos","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\COMUN","FullControl","Allow","NT AUTHORITY\SYSTEM","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\COMUN","FullControl","Allow","BUILTIN\Administradores","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\COMUN","FullControl","Allow","DOM\Administrador","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Grupo01","FullControl","Allow","NT AUTHORITY\SYSTEM","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Grupo01","FullControl","Allow","BUILTIN\Administradores","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Grupo01","FullControl","Allow","DOM\Administrador","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Grupo01","FullControl","Allow","DOM\Grupo01","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Grupo02","FullControl","Allow","NT AUTHORITY\SYSTEM","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Grupo02","FullControl","Allow","BUILTIN\Administradores","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Grupo02","FullControl","Allow","DOM\Administrador","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Grupo02","FullControl","Allow","DOM\Grupo02","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Grupo03","FullControl","Allow","NT AUTHORITY\SYSTEM","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Grupo03","FullControl","Allow","BUILTIN\Administradores","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Grupo03","FullControl","Allow","DOM\Administrador","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Grupo03","FullControl","Allow","DOM\Grupo03","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Usuarios","FullControl","Allow","NT AUTHORITY\SYSTEM","True","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Usuarios","FullControl","Allow","BUILTIN\Administradores","True","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Usuarios","ReadAndExecute, Synchronize","Allow","BUILTIN\Usuarios","True","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Usuarios","AppendData","Allow","BUILTIN\Usuarios","True","ContainerInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Usuarios","CreateFiles","Allow","BUILTIN\Usuarios","True","ContainerInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Usuarios","268435456","Allow","CREATOR OWNER","True","ContainerInherit, ObjectInherit","InheritOnly"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Usuarios\Usuario01","FullControl","Allow","NT AUTHORITY\SYSTEM","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Usuarios\Usuario01","FullControl","Allow","BUILTIN\Administradores","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Usuarios\Usuario01","FullControl","Allow","DOM\Administrador","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Usuarios\Usuario01","FullControl","Allow","DOM\Usuario01","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Usuarios\Usuario02","FullControl","Allow","NT AUTHORITY\SYSTEM","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Usuarios\Usuario02","FullControl","Allow","BUILTIN\Administradores","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Usuarios\Usuario02","FullControl","Allow","DOM\Administrador","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Usuarios\Usuario02","FullControl","Allow","DOM\usuario02","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Usuarios\Usuario03","FullControl","Allow","NT AUTHORITY\SYSTEM","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Usuarios\Usuario03","FullControl","Allow","BUILTIN\Administradores","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Usuarios\Usuario03","FullControl","Allow","DOM\Administrador","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Usuarios\Usuario03","FullControl","Allow","DOM\usuario03","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Usuarios\Usuario04","FullControl","Allow","NT AUTHORITY\SYSTEM","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Usuarios\Usuario04","FullControl","Allow","BUILTIN\Administradores","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Usuarios\Usuario04","FullControl","Allow","DOM\Administrador","False","ContainerInherit, ObjectInherit","None"
"Microsoft.PowerShell.Core\FileSystem::C:\datos\Usuarios\Usuario04","FullControl","Allow","DOM\usuario04","False","ContainerInherit, ObjectInherit","None"
Finalizada la ejecución del comando encontraremos en la raíz de nuestro disco c:\, el archivo ntfs_permisos_folder.csv. En su interior, tendremos nuestro lista de carpetas con sus permisos de seguridad para cada usuario.
Espero os sea de utilidad.
Muy Buen post te agradeceria si puedes explicarme que se debe modificar para que además de la información que arroja nos de tambien el peso de la carpeta
ResponderEliminarBuenos días Oscar Garces,
EliminarPara listar carpetas con su tamaño puedes leer el articulo del enlace que muestro a continuación:
https://www.pantallazos.es/2018/07/windows-powershell-listar-tamano-carpetas-csv.html
Recuerda que también tenemos un canal de YouTube, al que puedes suscribirte si te gustan nuestros contenidos!!!!
Un saludo
excelente post. me mostro los resultados que yo queria
ResponderEliminarMuchas gracias Harold,
EliminarRecuerda que también tenemos un canal de YouTube, al que puedes suscribirte si te gustan nuestros contenidos!!!!
Un saludo
Hola,
ResponderEliminarUna consulta y tendrás el código solo para listar las carpetas compartidas?
Buenas tardes,
EliminarAquí tienes la información que necesitas recién salida del horno.
https://www.pantallazos.es/2020/04/windows-server-listar-carpetas-compartidas.html
Un saludo y recuerda que también tenemos un canal de YouTube al que puedes suscribirte.
Buenos días,
ResponderEliminarSi la ruta contiene más de 260 caracteres, hay alguna forma de reducir el formato de la respuesta del csv para que quepa? U otra forma de sacar los permisos que no seas esta..
Muchas gracias!
excelente aporte Ingeniero.. me libro de la manualidad de cientos de carpetas. gracias.
ResponderEliminar¿Cómo puedo saber a qué carpetas compartidas tiene privilegios un usuario?
ResponderEliminar