Protegendo o monitoramento

Como o repositório de persistência, o repositório de monitoramento desempenha um papel fundamental na arquitetura do Windows Server AppFabric. O repositório de monitoramento contém dados do .NET Framework, que você pode usar para diagnosticar problemas de aplicativos, além de monitorar as condições de um aplicativo. O AppFabric fornece ferramentas para visualizar os dados de monitoramento rastreados. Você deve fornecer aos administradores permissões no repositório de monitoramento que executam as ferramentas administrativas do AppFabric, bem como os serviços de aplicativos e do sistema no tempo de execução, para ser capaz de ler e gravar a partir desse repositório de dados. Este tópico se concentra em como proteger os dados de monitoramento e as ferramentas administrativas usadas para acessá-los.

O uso do repositório de monitoramento se enquadra nos escopos de aplicativos e gerenciamento, e ele deve ser protegido de forma diferente em cada área. As permissões específicas são definidas em virtude da inclusão em vários grupos de segurança. O escopo de segurança de aplicativos afeta as permissões de um aplicativo em tempo de execução, e se correlaciona com a função conceitual de Usuários do Servidor de Aplicativos. O escopo de gerenciamento de segurança afeta as ferramentas e as operações relacionadas que um administrador e os serviços do sistema podem executar. Essas permissões se correlacionam, com as funções conceituais de Administradores do Servidor de Aplicativos e Operadores do Servidor de Aplicativos.

Protegendo os Dados de Monitoramento

O monitoramento reúne registros de rastreamento, eventos e outros dados emitidos pelos serviços WCF e WF e os armazena em um banco de dados. Os aplicativos frequentemente coletam e transmitem informações de identificação pessoal ou outros dados confidenciais. Quando os dados são incluídos em um registro de rastreamento, eles são salvos no repositório de monitoramento. O conteúdo das mensagens e das variáveis pode ser salvo no repositório, dependendo do perfil de rastreamento em uso. Vários servidores, sites e aplicativos podem compartilhar um único repositório de monitoramento. Pelo projeto, os dados de monitoramento são agregados em servidores e sites que compartilham um repositório, para facilitar o monitoramento da atividade de potencialmente milhares de instâncias de um serviço em um ambiente de grande porte. Depois que os dados forem armazenados no repositório de monitoramento, eles poderão ser vistos por todos os membros dos grupos AS_Administrators e por todos os membros das funções sysadmin e dbo do SQL Server. Membros do grupo AS_Observers pertencem ao grupo ASMonitoringDBReader e podem ler dados de monitoramento pelas exibições públicas do banco de dados de monitoramento. Os dados de rastreamento são vulneráveis à exposição acidental ou intencional, mas você pode tomar medidas para atenuar o risco.

O Serviço de Coleta de Eventos auxilia na proteção dos dados de monitoramento. Esse serviço obtém eventos de uma sessão de Rastreamento de Eventos para Windows (ETW) e grava-os em um banco de dados de monitoramento. Somente os aplicativos que tiverem permissões de "Gravação" na sessão do ETW iniciada pelo Serviço de Coleta de Eventos podem gravar eventos nessa sessão para coleta. Por padrão, o Serviço de Coleta de Eventos é executado como NT_AUTHORITY\LOCAL SERVICE. O SID específico ao Serviço de Coleta de Eventos (NT SERVICE\AppFabricEventCollectionService) é adicionado ao grupo AS_Administrators. Isso concede a ele acesso de leitura e gravação ao banco de dados de monitoramento porque AS_Administrators é parte da função do banco de dados ASMonitoringDBAdmin. Quando você usa os scripts de cmdlet do AppFabric para criar o banco de dados de monitoramento, todas essas funções e todos esses grupos são criados e inicializados corretamente. Se você deseja executar o Serviço de Coleta de Eventos como um usuário diferente, consulte Segurança da Coleta de Eventos, para obter informações sobre esse processo.

Observação

Como o AppFabric é executado no IIS, ele pode tirar proveito de alguns recursos adicionais. O IIS produz o logs de acesso ao servidor da Web padrão para analisar o uso. A integração com o Windows Server também significa que o IIS pode tirar proveito de auditoria do sistema para um monitoramento mais seguro da utilização dos recursos. Por exemplo, tentativas mal sucedidas de acessar um arquivo protegido podem ser registradas no log de eventos do Windows Server e auditadas com as mesmas ferramentas usadas para gerenciar servidores existentes.

Você pode proteger os dados no repositório de monitoramento das seguintes maneiras:

  • Use diferentes repositórios de monitoramento. Você pode criar e configurar um repositório de monitoramento alternativo no mesmo servidor ou em um servidor diferente, usando cmdlets do AppFabric para criar o repositório, e usando a página Configuração do Banco de Dados de Monitoramento para configurá-lo. Então, você pode configurar certos aplicativos para usar apenas esse repositório. Isto proporciona aos aplicativos especificados um repositório privado de dados de monitoramento que nenhum outro aplicativo poderá acessar.

  • Manipule os recursos de monitoramento. Você pode usar as extensões adicionadas ao Gerenciador do IIS pelo AppFabric para habilitar e desabilitar recursos de monitoramento de todos os serviços de fluxo de trabalho de um aplicativo; de todos os aplicativos de um site, ou de todos os sites da Web em um servidor. Você pode definir uma política de monitoramento em um nível superior e fazer com que todos os níveis inferiores da hierarquia do IIS e do WAS herdem as configurações de política.

Rastreamento de Eventos para Segurança de Sessões do Windows

O Serviço de Coleta de Eventos coleta eventos de monitoramento a partir de uma sessão de Rastreamento de Eventos para Windows (ETW) e os salva no repositório de monitoramento. Você pode controlar quais aplicativos gravarão eventos na sessão de Serviço de Coleta de Eventos do ETW, atribuindo permissões de segurança à identidade do pool de aplicativos do IIS. Por exemplo, você pode querer permitir que um pool de aplicativos executado sob uma identidade com baixos privilégios, como MACHINE\MyUser, registre eventos em uma sessão de rastreamento. Para isso, você deve atribuir a permissão de evento TRACELOG_LOG_EVENT a MACHINE\MyUser. Você pode atribuir essas permissões das seguintes maneiras:

  • Você pode alterar as permissões para que a identidade grave na sessão do ETW, usando a API EventAccessControl do Win32 (https://go.microsoft.com/fwlink/?LinkId=179742).

  • Ao usar o Monitor de Desempenho (PERFMON.EXE), você pode controlar quais aplicativos poderão gravar eventos na sessão do ETW, atribuindo permissões de segurança a certas identidades. Por exemplo, você pode querer permitir que um pool de aplicativos executado sob a identidade MACHINE\MyUser registre eventos em uma sessão de rastreamento se a sessão estiver sendo executada no modo SECURE. Para isso, você deve permitir que a permissão TRACELOG_LOG_EVENT a MACHINE\MyUser na guia Segurança da Sessão do Coletor de Eventos do AppFabric no Monitor de Desempenho.

Sempre que você estiver modificando grupos ou permissões de usuários nas configurações de segurança da sessão do Coletor de Eventos do AppFabric, é necessário, antes, interromper a sessão. Se isso não for feito, as configurações alteradas não serão preservadas.

Nesta seção

  2011-12-05