Pregunta

Disponemos de varios servidores que tienen muchos directorios compartidos.Es bastante fácil mirar el navegador de recursos compartidos para ver cuáles son los recursos compartidos de "nivel superior", pero debajo hay una confusión de permisos personalizados, ninguno de los cuales está documentado.

Me gustaría enumerar todos los recursos compartidos en el dominio (definitivamente todos los 'servidores', las PC locales estarían bien) y luego recurrir a cada uno e informar cualquier desviación del padre.Si el niño tiene los mismos permisos, no es necesario informarlo.

Preferiría una solución simple de script a escribir una gran aplicación C#, pero cualquier método que funcione servirá (incluso el software existente).

Por ejemplo, me gustaría obtener:

SERVER1\
 \-- C: (EVERYONE: Total control, ADMINs, etc. etc.)
   \-- (skip anything that is not the same as above)
   \-- SuperSecretStuff (Everyone: NO access; Bob: Read access)
SERVER2\ 
 \-- Stuff (some people)

etc.

¿Fue útil?

Solución

Sé que no se trata de secuencias de comandos, pero ¿has probado ShareEnum? http://technet.microsoft.com/en-us/sysinternals/bb897442.aspx y luego exportarlo?También puedes comparar con ejecuciones más antiguas.No creo que haya una interfaz de línea cmd (lo cual apesta), pero te brindará la información que necesitas.

Otros consejos

Este script de Powershell logra tu objetivo.

Como se afirma:

Este pequeño script enumerará todos los recursos compartidos en una computadora y enumerará los permisos a nivel de recurso compartido para cada recurso compartido.Utiliza WMI para recuperar los recursos compartidos y enumerar los permisos.

Tenga en cuenta que este script enumera los permisos a nivel de recurso compartido y no los permisos NTFS.

Acepta varias computadoras como entrada, una única IP o ejecutándola en el sistema local:

       .EXAMPLE 
       C:\PS> .\Get-SharePermissions # Operates against local computer. 

       .EXAMPLE 
       C:\PS> 'computerName' | .\Get-SharePermissions 

       .EXAMPLE 
       C:\PS> Get-Content 'computerlist.txt' | .\Get-SharePermissions | Out-File 'SharePermissions.txt' 
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top