Como definir permissões de leitura / gravação (mas não excluir) no log de eventos do aplicativo do Windows?

1

Meu aplicativo ASP.NET precisa ser capaz de gravar no log de eventos do Windows e ler o log de eventos do Windows usando o WMI. Eu não quero que a conta do aplicativo - atualmente NETWORK SERVICE, seja capaz de excluir ou modificar as entradas do log de eventos.

Sim, eu sei que um usuário mal-intencionado ainda seria capaz de limpar o log de eventos, inundando-o até que ele rola, mas eu posso viver com isso.

EDIT: Outra maneira de colocar a questão - existe alguma maneira que eu possa ter meu aplicativo gravar no log de eventos do Windows (aplicativo ou log personalizado) e saber que as entradas de log não foram posteriormente adulteradas pelo aplicativo que escreveu a entrada de log?

EDIT: Se a solução requer o uso de algo diferente da conta padrão NETWORK SERVICE para executar o asp.net, isso também é bom.

    
por MatthewMartin 01.06.2009 / 17:21

2 respostas

1

Eu não acho que você pode obter esse granular em um log de eventos. Que tal criar um log de eventos personalizado para seu aplicativo e fazer logon nele?

    
por 01.06.2009 / 17:27
0

Modificar os direitos de acesso da conta NETWORK SERVICE pode levar a coisas ruins no futuro. Mesmo que isso possa ser feito da maneira que você quer, no mínimo, é outra etapa de configuração para qualquer cliente em potencial fazer, e com a qual eles podem não ficar felizes. Uma regra de ouro não é mexer com a funcionalidade incorporada.

Nesse caso, o NETWORK SERVICE grava outros eventos de outros aplicativos e processos do SO nos logs, e você não quer quebrar isso, não é? Eu não estou tentando ser rude aqui, mas seu aplicativo pode não ser o único na máquina, então ele precisa ser legal.

    
por 01.06.2009 / 18:32