Usuário com melhor resposta
COMO PROTEGER ARQUIVOS E ABRI-LOS POR VIA DO C#?

Pergunta
-
Saúde e prosperidade, pessoal.
Pretendo que a minha aplicação abra arquivos PDF em uma pasta. Até aqui, tudo bem.
So que eu pretendo que o ACESSO À PASTA SEJA IMPOSSIBILITADO POR VIA DO WINDOWS. Na aplicação, coloquei dois bobtões que deverão abrir e eliminar os ficheiros. Só mesmo o administrador (se fosse possível, nem mesmo ele) poderá abrir a pasta por via do windows.
Bastará eu fazer: System.Diagnostics.Process.Start(@"C:\Pasta\arquivo.pdf");
Ou terei de informar ao C# uma senha (do administrador) para ter acesso a pasta onde estarão os arquivos?
Pelo C#, cada usuário so pode abrir os arquivos que estão nas pastas que ele tem acesso no windows? Ou o usuário pode abrir arquivos em outras pastas (pastas protegidas pelo administrador)?
Eu pretendo que os arquivos estejam em uma pasta única mas que ela esteja protegida para evitar acessos descontrolados. Neste caso, os usuários terão acesso aos arquivos SOMENTE PELO C# e não pelo Windows.
O C# perimite uma solução para este senário?
Agradecidamente,
Augusto
- Editado Augustop sexta-feira, 23 de março de 2012 01:27
Respostas
-
Olá Augusto,
para pegar o nome do usuário, basta utilizar a classe Environment:
String nomeUsuario = Environment.UserName;
Explore essa clase (Environment) pois ela trás muitas informações... E relaxa, não é trabalho algum...
Até mais...
- Marcado como Resposta Augustop sexta-feira, 23 de março de 2012 16:17
Todas as Respostas
-
-
-
Olá Augusto...
Dê uma olhada:
http://social.msdn.microsoft.com/Forums/pt/vscsharppt/thread/65bbfdfd-3801-4ae7-a481-0f200509bc23
http://msdn.microsoft.com/en-us/library/system.security.accesscontrol.filesystemaccessrule.aspx
http://msdn.microsoft.com/en-us/library/system.security.accesscontrol.directorysecurity.aspx
http://www.redmondpie.com/applying-permissions-on-any-windows-folder-using-c/
Espero que ajude...
Até mais...
-
-
Acho que vai funcionar. Preciso agora pegar apenas o usuário da máquina porque não preciso todos.
E sobre o link que eu passei, será que tem alguma relação?
Desculpe pelo trabalho que estou lhe dando mano. Estou muiiiiiiiito aflito.
Agradecidamente,
Augusto
-
Olá Augusto,
para pegar o nome do usuário, basta utilizar a classe Environment:
String nomeUsuario = Environment.UserName;
Explore essa clase (Environment) pois ela trás muitas informações... E relaxa, não é trabalho algum...
Até mais...
- Marcado como Resposta Augustop sexta-feira, 23 de março de 2012 16:17
-
-
Olá, você conseguiu uma solução para a sua necessidade??
Estou precisando de algo parecido... Fiz um sistema para gerenciamento de videos (video-aulas), essas video-aulas estão no formato AVI e gostaria de proteger esses arquivos específicos para que eles possam ser lidos apenas pelo player do meu sistema... e não por players como Media Player, etc... ou seja, restringir o acesso a leitura desses arquivos apenas para o meu sistema, bloqueando assim contra cópias do conteúdo.....
Sei que dá pra fazer por criptografia, porém não consegui fazer usando esse modo.. então pesquisei sobre algumas coisas e encontrei sobre System.Security.Permissions.FileIOPermission... Será que consigo utilizar esse sistema para fazer o que preciso???
Quem tiver alguma idéia, por favor entre em contato.... queria algo simples.... talvez até alterar algumas instrução nos arquivos de video e fazer algum código no meu sistema para ele reverter a ação e conseguir fazer a leitura, fazendo com que outros players externos não consigam executar a mesma ação... entendeu??
Espero respostas, valeu.
LucioCosta