Ntfs “Nenhuma permissão foi atribuída para este objeto”

1

Ocasionalmente observamos permissões danificadas em pastas com o erro: No permissions have been assigned for this object

Os sistemas afetados são principalmente o Windows 7, mas também o Terminal Server 2008 e posterior, não afetados é o Server 2003 Terminal Server.

Problemas
Os problemas surgem quando uma subpasta é criada. Como a subpasta não herda nenhuma permissão, ela obtém apenas as permissões padrão (proprietário etc.)

Já feito
Compardamos os sistemas afetados, mas eles não têm correspondências significativas no software ou nos drivers instalados.

Atualmente, procuramos um método para detectar essas falhas antes que nosso software seja executado em um erro. Ferramentas como AccessEnum não revelam isso. Chksk não encontrou nenhum erro.

Mas o mais importante é a pergunta: qual é a causa disso?

Alguém tem experiência com isso?

Editar:
Principalmente a pasta temporária local (C: \ Users \ [usuário] \ AppData \ Local \ Temp) propriamente dito é afetada pelo erro. Pelo menos o nosso software recebe os erros lá. Mas eu sei que outras pastas também podem ser afetadas.

Vimos o erro em cerca de 40 sistemas de clientes e, uma vez corrigido, parece não voltar.

A correção é bem fácil. Adicionar sistema - controle total (ou outra coisa) às permissões e as permissões antigas reaparecem novamente.

Edit2

Como o problema parece exatamente:

  • As permissões na pasta temp estão corrompidas (conforme mostrado na captura de tela)
  • Nesse estado, todos podem fazer qualquer coisa na pasta (excluir, criar, etc.)
  • Nosso instalador é executado de forma elevada e cria uma subpasta .\temp\ProgramInfos . Isso funciona (veja acima).
  • Como a pasta temp não possui permissões ativas, a pasta ProgramInfos não herda nada. Portanto, ProgramInfos obtém apenas os direitos para Administrators, System
  • O aplicativo instalado mais tarde está executando não elevado
  • O usuário não elevado não pode acessar a pasta - em estado não elevado, ele não é administrador.

Não é um erro geral. Estamos instalados em dez milhares de computadores e até hoje apenas cerca de 40 tinham esse erro.

(Na falta de um sistema em inglês com esse erro, o screnshot não mostra uma mensagem autêntica, mas em alemão é o mesmo)

    
por boboes 30.12.2014 / 12:19

1 resposta

1

Essa pasta Temp está quase tão perto de um free-for-all quanto o Windows. Por padrão, o grupo "Usuários" do PC tem controle total dele, então você não pode confiar que ele esteja em qualquer estado esperado.

A única resposta é alterar o instalador para garantir que ele esteja aplicando as permissões necessárias às pastas que ele está criando, em vez de depender de permissões herdadas (possivelmente ausentes / incorretas).

    
por 30.12.2014 / 15:32