Segurança do coletor de dados

O coletor de dados usa o modelo de segurança baseado em função implementado pelo SQL Server Agent. Esse modelo permite que o administrador do banco de dados execute várias tarefas de coletor de dados em um contexto de segurança que tem apenas as permissões exigidas para executar a tarefa. Essa abordagem também é usada para operações que envolvem tabelas internas que só podem ser acessadas usando um procedimento armazenado ou exibição. Nenhuma permissão é concedida a tabelas internas. Em vez disso, as permissões são verificadas no usuário do procedimento armazenado ou na exibição usada para acessar a tabela.

Observação importanteImportante

Outro aspecto fundamental desse modelo de segurança são as permissões concêntricas. Nas permissões concêntricas, funções mais privilegiadas herdam as permissões de funções menos privilegiadas nos objetos (incluindo alertas, operadores, tarefas, agendas e proxy). Para obter mais informações, consulte Funções de banco de dados fixas do SQL Server Agent.

As próximas seções descrevem a segurança da coleta de dados em geral, assim como as funções que você deve conceder aos usuários para que eles possam configurar e usar o coletor de dados e executar tarefas associadas ao data warehouse de gerenciamento.

Segurança em geral

O coletor de dados é instalado de acordo com os padrões documentados especificados para o SQL Server 2008. Para obter mais informações, consulte Implantação segura (Mecanismo de Banco de Dados).

Segurança de rede

Informações confidenciais podem ser passadas entre instâncias de destino, a instância relacional associada ao servidor de configuração, os conjuntos de coleta em execução e o servidor que hospeda o data warehouse de gerenciamento.

Para proteger qualquer dado transferido em uma rede, são implementados mecanismos de segurança padrão, como criptografia de protocolo para Transact-SQL.

Permissões para configurar e usar o coletor de dados

Dependendo da tarefa, os usuários devem ser membros de uma ou mais das funções de banco de dados fixas fornecidas para o coletor de dados. Em ordem de acesso mais privilegiado para acesso menos privilegiado, as funções são as seguintes:

  • dc_admin

  • dc_operator

  • dc_proxy

Essas funções são armazenadas no banco de dados msdb. Por padrão, nenhum usuário é membro dessas funções de banco de dados. A associação do usuário a elas deve ser explicitamente concedida.

O usuários que são membros da função de servidor fixa sysadmin têm acesso total às exibições do coletor de dados e aos objetos do SQL Server Agent. Porém, eles precisam ser adicionados explicitamente à funções de coletor de dados.

Observação importanteImportante

Os membros das funções db_ssisadmin e dc_admin podem elevar seus privilégios para sysadmin. Essa elevação de privilégios pode ocorrer porque essas funções podem modificar os pacotes do Integration Services e os pacotes do Integration Services podem ser executados pelo SQL Server usando o contexto de segurança sysadmin do SQL Server Agent. Para se proteger contra essa elevação de privilégios ao executar planos de manutenção, conjuntos de coletas de dados e outros pacotes do Integration Services, configure os trabalhos do SQL Server Agent que executam pacotes para usar uma conta proxy com privilégios limitados ou adicione apenas membros sysadmin às funções db_ssisadmin e dc_admin.

Função dc_admin

Usuários atribuídos à função dc_admin têm acesso total de administrador (Criação, Leitura, Atualização e Exclusão) à configuração do coletor de dados em uma instância de servidor. Membros dessa função podem executar as seguintes operações:

  • Definir propriedades de nível de coletor.

  • Adicionar novos conjuntos de coleta.

  • Instalar novos tipos de coleta.

  • Executar todas as operações permitidas à função dc_operator.

A função dc_admin é membro das seguintes funções:

  • SQLAgentUserRole. Essa função é necessária para criar agendas e executar tarefas.

    ObservaçãoObservação

    Proxies criados para o coletor de dados devem conceder acesso à dc_admin para criá-los e utilizá-los em qualquer etapa da tarefa que exija um proxy.

  • dc_operator. Membros da dc_admin herdam as permissões fornecidas ao dc_operator.

Função dc_operator

Membros da função dc_operator têm acesso de Leitura e Atualização. Essa função suporta tarefas de operações relacionadas com a execução e configuração de conjuntos de coleta. Membros dessa função podem executar as seguintes operações:

  • Iniciar ou parar um conjunto de coleta.

  • Enumerar conjuntos de coleta existentes.

  • Exibir informações detalhadas (por exemplo, itens e freqüência de coleta) associadas a um conjunto de coleta.

  • Alterar a freqüência de carregamento de conjuntos de coleta existentes.

  • Alterar a freqüência de coleta de itens de coleta que fazem parte de um conjunto de coleta existente.

A função dc_operator é membro da seguinte função:

  • db_ssisltduser. A associação a essa função é necessária para que os membros possam enumerar e exibir pacotes do coletor de dados. Para obter mais informações, consulte Usando funções do Integration Services.

Função dc_proxy

Membros da função dc_proxy têm acesso de Leitura aos conjuntos de coleta do coletor de dados e às propriedades de nível de coletor. Os membros dessa função também podem executar tarefas de sua propriedade e criar etapas de tarefa executadas como uma conta proxy existente.

Membros dessa função podem executar as seguintes operações:

  • Exibir informações de configuração do conjunto de coleta (por exemplo, parâmetros de entrada de itens de coleta e a freqüência de coleta desses itens).

  • Obter informações internas criptografadas que só podem ser acessadas por um procedimento armazenado assinado (por exemplo, informações de conexão de data warehouse usadas para carregamento de dados).

  • Registrar em log eventos de tempo de execução do conjunto de coleta.

A função dc_proxy é membro da seguinte função:

  • db_ssisltduser. A associação a essa função é necessária para que os membros possam enumerar e exibir pacotes do coletor de dados. Para obter mais informações, consulte Usando funções do Integration Services.

Permissões para configurar e usar o Data Warehouse de gerenciamento

Dependendo da tarefa, os usuários devem ser membros de uma ou mais das funções de banco de dados fixas fornecidas para acessar o data warehouse de gerenciamento. Em ordem de acesso mais privilegiado para acesso menos privilegiado, as funções são as seguintes:

  • mdw_admin

  • mdw_writer

  • mdw_reader

Essas funções são armazenadas no banco de dados msdb. Por padrão, nenhum usuário é membro dessas funções de banco de dados. A associação do usuário a elas deve ser explicitamente concedida.

O usuários que são membros da função de servidor fixa sysadmin têm acesso total às exibições do coletor de dados. Porém, eles precisam ser adicionados explicitamente à funções do banco de dados para executar outras operações.

Função mdw_admin

Membros da função mdw_admin têm acesso de Leitura, Gravação, Atualização e Exclusão no data warehouse de gerenciamento.

Membros dessa função podem executar as seguintes operações:

  • Alterar o esquema do data warehouse de gerenciamento quando necessário (por exemplo, adicionando uma tabela nova quando é instalado um novo tipo de coleta).

    ObservaçãoObservação

    Onde houver uma alteração de esquema, o usuário também deve ser membro da função dc_admin para instalar um novo tipo de coletor, pois esta ação exige permissão para atualizar a configuração do coletor de dados no msdb.

  • Executar tarefas de manutenção no data warehouse de gerenciamento, como arquivo ou limpeza.

Função mdw_writer

Membros da função mdw_writer podem carregar e gravar dados no data warehouse de gerenciamento. Qualquer coletor que armazena dados no data warehouse de gerenciamento deve ser membro dessa função.

Função mdw_reader

Membros da função mdw_reader têm acesso de Leitura ao data warehouse de gerenciamento. Como o objetivo dessa função é dar suporte à solução de problemas fornecendo acesso a dados históricos, os membros dessa função não podem exibir outros elementos do esquema do data warehouse de gerenciamento.