Parece que isso pode fazer o que você está procurando. Não é código powershell, mas eu amo brinquedos sysinternals.
Eu preciso de uma ferramenta / script que relate as permissões atualmente definidas para um determinado caminho.
Existe algo assim?
Parece que isso pode fazer o que você está procurando. Não é código powershell, mas eu amo brinquedos sysinternals.
O utilitário setacl fará o que você está procurando, com o benefício adicional de ter a opção de "restaurar" as ACLs salvas em um arquivo para um sistema de arquivos ao vivo. Eu usei o setacl de maneira semelhante ao que você está descrevendo, incluindo "restaurar" as ACLs como parte do script automaticamente para fazer o checkout e implantar o aplicativo a partir do controle de versão.
A sintaxe da linha de comando para setacl é, possivelmente, confusa e difícil. Para salvar as ACLs de uma hierarquia de pastas em um arquivo que você faria:
SetACL.exe -on "\server\share\source-folder" -ot file -actn list -lst "f:sddl;w:d,s,o,g" -rec cont -bckp "output-file.txt"
Objetos (arquivos ou pastas) que herdam todas as suas ACLs de seu objeto pai não serão listados na saída (de tal forma que apenas objetos que tenham ACLs definidos neles serão relatados).