Como posso alterar as ACLs recursivamente usando o cacls.exe?

5

Eu quero restringir o acesso para tudo dentro do diretório work para mim e apenas para o sistema. Eu tentei isso com o seguinte comando:

cacls.exe work /t /p 'PIXLA09\Maaartin:f' 'NT AUTHORITY\SYSTEM':f

No entanto, não funciona de todo. O comando a seguir deve mostrar apenas os dois usuários especificados, mas mostra uma lista muito longa de permissões:

cacls.exe work/somedirectory

Eu tentei usar /g em vez de /p também. Como não usei /e , as permissões não devem ser editadas, mas substituídas.

Alguma ideia do que está errado?

    
por maaartinus 04.05.2011 / 20:41

1 resposta

0

Pode haver um pequeno erro na sua primeira linha de comando. O: f deve estar fora das aspas. Parece também que você usou aspas simples em vez de aspas duplas. Isso não funcionou quando eu tentei.

Esta linha de comando funcionou bem para mim:

cacls test /t /g "computername\sahmeepee":f "system":f

ou usando seus nomes:

cacls work /t /g "PIXLA09\Maaartin":f "system":f

Outro possível problema é a estranha ordem em que o comando cacls parece aplicar mudanças de permissão. Se você executar o comando acima, mas em vez de sua própria conta, você concederá permissões a outra pessoa, somente o diretório "test" será afetado - não seus subdiretórios. Isso ocorre porque o comando parece fazer alterações de cima para baixo, e não de baixo para cima, portanto, quando se trata de editar as ACLs nos subdiretórios, ele não tem mais permissão!

    
por 14.05.2011 / 12:00