Permissões de arquivo de redefinição recursiva no Windows

11

Há uma estrutura de diretórios grande e complexa em uma grande partição NTFS relativa . Alguém conseguiu colocar privilégios de segurança muito ruins nele - existem diretórios com permissões concedidas / negadas aleatoriamente, etc. Eu já encontro bugs de permissão várias vezes e encontrei configurações de permissão inseguras várias vezes (por exemplo, permissões de gravação para "Todos" ou falsos proprietários).

Não tenho tempo para verificar tudo manualmente (é grande ).

Mas, felizmente, meus desejos são muito simples. O mais comum: ler / escrever / executar qualquer coisa para mim e talvez ler para Todos.

É possível de alguma forma

  • remova todos os dados de segurança de um diretório
  • e dando meus (simples) desejos de sobrescrever tudo lá?

No Unix, eu usei uma chown -R ..., chmod -R ...sequência de comando. Qual é o seu equivalente no Windows?

peterh - Restabelecer Monica
fonte

Respostas:

22

O NTFS é um pouco mais refinado do que o RWX; portanto, neste exemplo, estou apenas redefinindo as ACLs para o padrão. Se você tem uma coleção específica de ACE s, adicione-os à sua pergunta. Além disso, se as permissões da unidade forem alteradas, precisaremos corrigi-las também.

Supondo que a árvore esteja enraizada em D: \ files:

REM Make local administrators group owner.
takeown /F D:\files /R /A /D Y

REM Reset ACLs to defaults.
icacls D:\files /reset /T /C /L /Q
jscott
fonte
Eu recebo um erro dizendo que 'Y' não pode ser usado com a opção '/ D'
Manticore
@Manticore Você não forneceu seu comando de exemplo completo, nem nenhum detalhe sobre o ambiente em que o executou. Eu apenas takeown
copiei
@jscott Estou apenas dizendo o que aconteceu comigo. Também copiei e colei (com cuidado), executei o comando e retornei a mensagem. Eu consegui resolver meu problema com o takeown. Só tive que usar opções diferentes.
Manticore #
3
@Manticore A opção '/ D' precisa de uma entrada localizada, portanto, para uma instalação alemã do Windows, use takeown /F D:\files /R /A /D J(J em vez de Y).
Paul