As permissões de arquivo do Windows não se aplicam a arquivos existentes

As permissões de arquivo do Windows não se aplicam a arquivos existentes

Lançamos esta nova máquina com Windows 8.1 no domínio recentemente, outros desktops ainda usam XP. Um dos softwares que instalamos é o Oracle Client, ele é instalado manualmente na máquina usando uma conta de administrador de domínio (ou seja: não implantado através de GPO ou algo semelhante).

O usuário do computador (não administrador) precisa de acesso total à pasta onde o software está instalado C:\oracle\client\[...]. Nas máquinas XP eu faria login como administrador no computador, clicaria com o botão direito na pasta raiz C:\oraclee iria em Segurança, daria acesso total ao [computer_name]\usersgrupo, verificaria as Apply to sub-foldersconfigurações e clicaria em OK.

Aqui não funciona: o usuário tem acesso total a todos os arquivos folderse sub-folders, pode abrir as pastas, criar novos arquivos em qualquer lugar; mas o usuário não tem acesso aos arquivos, ele obtém Access Denied. No entanto, se eu alterar as permissões em um arquivo específico, o usuário poderá acessá-lo.

Repeti a operação usando [domain]\[username]em vez disso e até entreguei a propriedade das pastas ao usuário sem sucesso. As pastas estão OK, os arquivos não recebem a alteração de permissão.

Então eu tenho:

  • Permissões completas de leitura/gravação/execução aplicadas a uma pasta e suas subpastas
  • As permissões são aplicadas às pastas, mas não aos arquivos existentes
  • Alterar as permissões em um arquivo funciona (mas existem milhares de arquivos nele)

Estou esquecendo de algo? Já fiz isso muitas vezes em máquinas XP e 7, então acho que 8.1 é o problema aqui, mas não consigo encontrar nada sobre isso.

Obrigado!

Responder1

Parece que a permissão está definida como Apply to This folder and subfolders, em vez de This folder, subfolders and files.

Então você mudaria isso:

insira a descrição da imagem aqui

Claro, se as permissões já estiverem definidas para This folder, subfolders and files, talvez você só precise forçar a propagação das permissões para objetos filhos com a Replace all child object permissions with inheritable permissions from this objectcaixa de seleção.

insira a descrição da imagem aqui

E, claro, mas as coisas podem ser feitas com o PowerShell, mas não há parâmetro nativo para nenhum deles emo cmdlet Set-ACL, então você precisaria do seu script para aplicar as permissões recursivamente. Então talvez seja melhor usarIcalcs, que inclui um parâmetro para aplicar a permissão fornecida a todos os arquivos da pasta e quaisquer subpastas.

informação relacionada