O que você faz para corrigir permissões corrompidas ou bloqueadas nos compartilhamentos de arquivos da empresa?

8

Ultimamente, tenho trabalhado com um de nossos funcionários de armazenamento em um projeto que envolveu uma análise minuciosa dos compartilhamentos de arquivos grandes que são usados ​​pela empresa há anos. Freqüentemente, encontramos diretórios ou arquivos inacessíveis para nós (com conta de administrador de domínio) por um ou mais dos seguintes motivos:

  • ACLs corrompidas
  • acesso foi revogado ou negado para o grupo Administradores (ou usuário do SISTEMA)
  • nome do arquivo + caminho muito longo (além de MAX_PATH )

Existem algumas ferramentas que podem ajudar nessas situações, da Microsoft (por exemplo, TAKEOWN.EXE e ICALCS.EXE) ou de terceiros (por exemplo, SETACL.EXE ). Às vezes, são necessários outros truques, como executar um dos comandos na conta SYSTEM com o PSEXEC.EXE . Até mesmo descobrir quais etapas a serem executadas e em que ordem é um desafio ...

Por exemplo, eu gostaria de poder solucionar problemas com um fluxo como este:

  1. O caminho é longo demais? Nesse caso, crie um caminho com o \\?\prefixo e teste novamente.
  2. A ACL está corrompida? Nesse caso, reordene as ACEs corretamente e remova quaisquer incógnitas e teste novamente.
  3. O grupo Administradores foi negado? Nesse caso, tome posse, adicione novamente permissões ao grupo Administradores e à conta SYSTEM e teste novamente.
  4. Ainda está falhando? Nesse caso, exclua todas as ACEs e aplique apenas permissões herdadas e verifique novamente. (Esse é um tipo de último recurso, pois frequentemente ele abre permissões que deveriam ser mais restritivas.)
  5. É um diretório? Nesse caso, o processo precisa continuar recursivamente para os arquivos dentro ...

Executar as etapas acima manualmente é uma dor e irracional quando temos centenas de diretórios para corrigir. Tentei escrever scripts para ajudá-los, mas acho que é difícil tornar o script "inteligente" sobre as decisões que toma e, portanto, muitas vezes é mais fácil executar um método de reparo bruto, como restaurar apenas as permissões herdadas.

Alguém pode recomendar outro software e / ou scripts que ajudariam nesse processo? Ou, como você corrige problemas de permissões como esses?

ewall
fonte

Respostas:

2

Eu recomendo usar o fileacl - ele é capaz de definir ACLs com o SeBackupPrivelege, não exigindo que o usuário em que você está executando o comando tenha permissões para alterar as ACLs em um determinado objeto. Além disso, ele suporta nativamente a funcionalidade de herança pós-NTFS-5 e é facilmente script, portanto, com alguma lógica de script de agrupamento, ele deve fazer o que você deseja.

o wabbit
fonte
eu estou marcando esse ... obrigado obrigado obrigado
SpaceManSpiff
@SpacemanSpiff você é bem-vindo.
the-wabbit
Depois de comparar quase todas as ferramentas da Microsoft e de terceiros que pude encontrar, o fileacl.exe acabou sendo o melhor. A /forceopção realmente funciona, diferentemente de outras (como a execução na conta SYSTEM com psexec.exe ou opções similares de permissão de uso de backup e / ou SYSTEM). Eu tive que escrever um script do PowerShell para vasculhar o sistema de arquivos e corrigir tudo, mas é incrível que a única ferramenta externa necessária seja essa. Obrigado pela dica, @ syneticon-dj!
eWall