Como solucionar a falha de projeto Mover / Copiar do NTFS?

31

Como qualquer um que tenha lidado com as permissões do servidor de arquivos está ciente, o NTFS possui um recurso / falha de design interessante, conhecido como problema Mover / Copiar.

Conforme explicado neste artigo do MS KB , as permissões para uma pasta ou arquivo não herdam automaticamente do pai se a pasta é movida e a origem e o destino estão no mesmo volume NTFS. As permissões são herdadas se a pasta for copiada ou se a origem e o destino estiverem em volumes diferentes.

Aqui está um exemplo rápido:

Você tem duas pastas compartilhadas no mesmo volume NTFS chamado "Técnicos" e "Gerentes". O grupo Technicians tem acesso RW à pasta Technicians e o grupo Managers tem acesso RW à pasta "Managers". Se alguém tiver acesso a ambos e mover uma subpasta da pasta "Administradores" para a pasta "Técnicos", a pasta transferida ainda será acessível apenas aos usuários no grupo "Administradores". O grupo "Técnicos" não pode acessar a subpasta, embora esteja na pasta "Técnicos" e deva herdar permissões do topo.

Como você pode imaginar, isso causa chamadas de suporte, tíquetes e ciclos desperdiçados na resolução desses problemas de usuários finais, sem mencionar o ninho de permissões que você pode acabar se os usuários estiverem movendo pastas entre diferentes pastas protegidas / área no mesmo volume.

As perguntas são:

Qual é a melhor maneira de solucionar essa falha de design do NTFS e como você está lidando com isso em seu ambiente?

Eu sei que o artigo da KB vinculada fala sobre algumas chaves de registro para alterar o comportamento padrão do Windows Explorer, mas elas são do lado do cliente e exigem que os usuários alterem as permissões. um não-inicial, se você quiser manter o controle sobre suas permissões de servidor de arquivos (e sua sanidade como um administrador de sistema).

    
por David Archer 25.06.2009 / 18:52

8 respostas

13

Minha abordagem é não usar permissões de arquivo no nível de arquivo / diretório; use permissões de nível de compartilhamento de arquivos e defina toda a unidade de dados do sistema de arquivos do servidor para Todos Controle Total (que se torna discutível).

Ao longo dos anos (10+), descobri que as permissões de NTFS são mais complexas e levam a mais erros. Se as permissões estiverem erradas ou a herança for quebrada, você exporá os dados e será difícil encontrá-los e vê-los. Além disso, você está exposto ao problema de mover / copiar, como você diz.

Locais onde você precisa usar ACLs de diretório / arquivo; Não conheço nenhuma outra solução que não seja a de verificar a coisa regularmente.

    
por 06.07.2009 / 14:58
10

Bem, não é realmente uma falha. Esta regra para lidar com permissões ao mover arquivos está em vigor desde pelo menos a versão beta 2 do NT3.1 (embora obviamente não seja herança, uma vez que isso foi adicionado somente no Windows 2000). É tão conhecido como qualquer recurso do Windows pode ser. Eu tenho muita simpatia pela sua opinião, pois pode haver alguns de nós que não foram queimados por isso em um estágio. Mas é algo que o administrador de sistema aprende rapidamente.

JR

    
por 25.06.2009 / 19:11
6

Estamos usando o NTFS desde o NT 3.51 e, embora tenhamos visto esse "problema" (como quase todos), isso não nos causou muitos problemas:

  • Sempre dizemos às pessoas para copiarem arquivos se precisarem movê-las de um diretório compartilhado para outro. "Mantenha pressionada a tecla CTRL ao arrastar e verifique se o pouco + está sendo mostrado" é uma frase comum.
  • Nossas pastas compartilhadas têm uma estrutura bastante simples, e as pastas compartilhadas que criamos não fazem a transição entre os grupos com muita frequência, portanto, é mais provável que as pessoas queiram copiar os arquivos em primeiro lugar.
  • Vimos o problema principalmente em nosso espaço "comum" - pastas em que todos podem ler / gravar, mas esses diretórios são de curta duração, então o problema desaparece quando eles são eliminados.
por 25.06.2009 / 20:21
4

Soluções alternativas em que consigo pensar:

  • encontre uma maneira de tornar as pastas com permissões diferentes em diferentes volumes NTFS
  • Faça uma tarefa agendada (uma vez por hora ou uma vez por dia, dependendo da frequência de solicitações de suporte) que seja executada nas pastas e redefina todas as permissões para que sejam iguais às do nível superior. Isso é menos do que ideal, ainda mais se as pastas tiverem muitos arquivos nelas, mas é algo que manteria o problema resolvido se não houvesse uma boa solução, como uma correção de registro do lado do servidor. O comando que você vai querer olhar é chamado de 'cacls', que você pode adicionar em um arquivo de lote.

Isenção de responsabilidade - Eu venho de um background unix (e implementei o último para corrigir falhas de permissões diferentes - parece complicado, mas faz o trabalho), então pode haver uma solução muito melhor.

    
por 25.06.2009 / 19:12
3

Ao mover-se como administrador, uso xcopy / s / e / c / h / r / k / y - tudo além da propriedade de arquivo e da ACL, o que significa que a herança da ACL entra em ação. Nunca tive que lidar com uma situação onde um usuário moveu as coisas embora.

    
por 26.06.2009 / 01:43
3

Eu uso diretivas de grupo / políticas de segurança / sistema de arquivos para acompanhar permissões complicadas. (NUNCA use o "substituir permissões" na política).

Agende um CACLS para redefinir todas as permissões durante a noite, seguido por um gpupdate / force para reaplicar a permissão da política. Funciona como um encanto.

    
por 21.05.2012 / 13:37
1

Desde o Windows 7 (ou talvez Windows Vista), as permissões para uma pasta ou arquivo DO herdam do pai se a pasta for movida e a origem e destino estiverem no mesmo volume NTFS - se um arquivo ou pasta estiver sendo copiado via Explorer. Em um sistema operacional anterior, você pode usar o Far manager - ele permite ativar a herança de permissões do destino (junto com vários outros recursos). Embora Far possa não parecer amigável para um usuário geral.

    
por 03.04.2017 / 19:26
0

Uma solução muito simples é apenas compactar os arquivos e descompactá-los no diretório de destino.

    
por 25.06.2009 / 19:19