Você pode realizar sua meta com o que eu chamo de Permissões de pasta de nível superior .
Resumo
- Na raiz da unidade, conceda permissões Leitura aos seus usuários, que fluem para todas as subpastas e arquivos em toda a unidade.
- Em cada pasta "Nível superior" na unidade raiz, aplique permissões especiais que concedam aos usuários permissões Modificar ao conteúdo das pastas (todos os arquivos e subpastas), mas não às pastas de nível superior.
Etapas para implementar
- Na unidade raiz, conceda
Everyone
(ou outro grupo de sua escolha) padrão Ler permissões - Opcionalmente, na unidade raiz, considere garantir que
SYSTEM
eAdministrators
recebam Controle total e, em seguida, remova todas as outras permissões (por exemplo, aquelas concedidas aCREATOR OWNER
ouUsers
) - Em cada pasta de nível superior:
- Conceda as permissões
Everyone
group Modificar e edite a atribuição de permissões nas Configurações avançadas de segurança para aplicá-las somente em Subpastas e arquivos - Ainda nas Configurações de segurança avançadas, faça outra entrada que conceda ao grupo
Everyone
as seguintes permissões específicas e aplique-as a Somente esta pasta :- Criar arquivos / gravar dados
- Criar pastas / anexar dados
- Conceda as permissões
- Repita o passo # 3 para cada pasta de nível superior
Como funciona
O efeito de # 1 é conceder ao seu grupo de segurança a capacidade de ler tudo na unidade.
O efeito de # 3 é conceder ao seu grupo de segurança a capacidade de modificar todos os objetos filhos de suas pastas de nível superior sem conceder permissão para modificar as pastas de nível superior. Isso não é suficiente para permitir que eles criem qualquer coisa nas pastas de nível superior, daí as permissões explícitas de 'criar'.
Aplicar a muitas pastas de nível superior
As permissões da etapa 3 acima devem ser aplicadas à pasta each "Top Level". Isso pode ser demorado se você tiver muitas pastas. Essas permissões podem ser aplicadas a todas as subpastas na raiz da unidade usando o FOR e ICACLS executado em um prompt de comando elevado:
For /D %f In (C:\*.*) Do ICACLS "%f" /grant "Everyone":(OI)(CI)(IO)(M)
For /D %f In (C:\*.*) Do ICACLS "%f" /grant "Everyone":(WD,AD)
Como mostrado, esses dois comandos modificarão todas as subpastas em C:\
para conceder as permissões descritas na etapa 3 ao grupo Everyone
. Modifique esses dois elementos para atender às suas necessidades. Teste primeiro antes de executar em um sistema de produção!