Mantendo um segredo

2

Eu tenho um serviço .NET do Windows que precisa armazenar um segredo na máquina e proteger esse segredo dos administradores locais do sistema. Está tudo bem se os administradores do domínio tiverem acesso.

Este segredo não é inserido pelo usuário. Ele é gerado no momento da instalação e a instalação pode ser automatizada.

Meu primeiro pensamento foi usar o EFS. Se eu executasse o serviço do Windows como uma conta de domínio e armazenasse o segredo em um arquivo criptografado com EFS, mesmo os administradores locais não poderiam acessar o arquivo, a menos que também fossem administradores de domínio e utilizassem um certificado de recuperação do EFS.

Existe uma opção melhor? Existe uma maneira de fazer isso sem exigir que o Serviço do Windows seja executado como uma conta de domínio?

    
por RMD 14.09.2010 / 19:21

2 respostas

1

Acho que usar criptografia de chave pública seria uma boa opção para isso.

Gere o segredo e criptografe-o com a chave pública. Salve-o localmente. Compartilhe em todos os lugares para todos os que se importam. Desde que a sua criptografia inicial seja boa o suficiente, não há nenhum problema com os administradores locais tendo acesso ao segredo criptografado.

Isso pressupõe, é claro, que você não compartilhe a chave privada da criptografia com seus administradores locais:)

    
por 15.09.2010 / 00:08
0

O registro é construído para isso. Você pode especificar permissões no nível da chave.

    
por 14.09.2010 / 19:26