O aplicativo pode ler um arquivo, o aplicativo do usuário está sendo executado em não é possível

0

É possível definir as permissões em um arquivo para que um usuário não possa copiar o arquivo (sem permissões de leitura), mas uma aplicação em execução sob esse usuário poderia ler esse arquivo?

Acho que não, mas não tenho 100% de certeza - para que o aplicativo possa lê-lo, o usuário que está executando teria que ter permissões de leitura?

Talvez isso possa ser definido com as políticas do Windows?

    
por sluzran 16.01.2017 / 10:38

3 respostas

1

Como o aplicativo seria executado com permissões de usuário, ele não conseguiria ler o arquivo se o usuário não conseguisse ler o arquivo.

Você pode tentar configurar um processo que represente outro usuário em nome do usuário que está executando o aplicativo, o que poderia ter permissões diferentes. Vai ser um pouco trabalhoso e, dependendo de como você implementa isso, você daria ao usuário essa permissão de qualquer maneira, pois ele procuraria as credenciais usadas para a representação.

Outra abordagem seria verificar se um usuário não consegue listar o conteúdo do diretório que contém o arquivo. Ainda seria possível abrir o arquivo, pois o usuário ainda teria permissões de leitura. Essa abordagem apenas obscureceria o acesso e não o impediria!

    
por 16.01.2017 / 10:45
0

Depende do nível técnico do seu usuário. Se ele / ela bem educado, então a resposta é - Não, mas você pode usar vários truques de obscuridade que "impedem" o usuário de ver o conteúdo real do arquivo enquanto ele pode ser acessado pelo seu programa. O método mais fácil (IMHO) de ofuscação é usar fluxos de dados alternativos (ADS) em algum lugar em% AppData%

Você poderia esclarecer o que você está tentando alcançar? Pode haver uma solução melhor que possamos sugerir para você

    
por 16.01.2017 / 11:15
0

Se o usuário executar o aplicativo sem permissões administrativas, o aplicativo não poderá acessar o arquivo.

Se o usuário executar o aplicativo como administrador, o programa poderá acessar o arquivo, o usuário não poderá. Observe que um aplicativo executado como administrador tem muito mais direitos e isso pode não ser prático.

Uma abordagem melhor seria ocultar ou armazenar o arquivo de forma diferente, dependendo do que o aplicativo faz e do controle que você tem sobre como ele acessa os arquivos.

Por exemplo, você pode armazenar os dados em um banco de dados localizado na rede ou ter uma comunicação cliente-servidor em que o servidor transmite o arquivo para o cliente, o cliente o exibe e remove a cópia após a conclusão. Em essência, isso pode ser tão simples quanto um servidor web. Lembre-se de que, se um usuário abrir um arquivo, ele poderá armazená-lo e, em seguida, terá acesso. Mostrar o arquivo incorporado na página da Web pode impedir isso.

    
por 16.01.2017 / 11:59