[KB8406] Adicionar permissões para obter locais de dados do banco de dados para gerar exclusões automáticas para o Microsoft SQL Server nos produtos ESET Windows Server

NOTA:

Esta página foi traduzida por um computador. Clique em inglês em Idiomas nesta página para exibir o texto original. Se você encontrar algo que não esteja claro, por favor entre em contato com o suporte local.

Problema

Solução

Aparece um erro ao obter o local personalizado dos dados do banco de dados

As exclusões automáticas do Microsoft SQL Server consistem principalmente em locais padrão de arquivos de banco de dados. No entanto, também consistem em caminhos nos quais os arquivos de banco de dados são armazenados em locais personalizados. Nesse caso, a conta NT AUTHORITY\SYSTEM deve ter os direitos apropriados para extrair essas informações do banco de dados mestre.

No Microsoft SQL Server 2016 e posterior, a Microsoft removeu a função de servidor sysadmin para a conta NT AUTHORITY\SYSTEM, fazendo com que os produtos de servidor ESET Windows percam o acesso aos dados no banco de dados mestre, que contém os locais dos dados do banco de dados da instância do Microsoft SQL Server.

Os produtos ESET Windows Server informam sobre esse problema através da mensagem de erro. Clique em Arquivos de registro, selecione Eventos no menu suspenso e exiba a mensagem de erro:

"Ocorreu um erro ao carregar os arquivos de banco de dados dos bancos de dados do Microsoft SQL Server. Verifique se a conta 'NT AUTHORITY\SYSTEM' tem permissões suficientes para ler dados das exibições de sistema dos bancos de dados mestre."

Figura 1-1
Clique na imagem para ampliá-la em uma nova janela
Se você não puder fazer nenhuma alteração por motivos de segurança
  • Se você não puder fazer nenhuma alteração, as exclusões automáticas consistirão apenas em locais padrão.
  • Se tiver alguns arquivos de banco de dados localizados em um local ou locais específicos (não no caminho padrão), adicione esse caminho ou caminhos manualmente ou às exclusões.
  • Se todos os arquivos de banco de dados estiverem localizados apenas nos locais padrão, ignore esse erro.


Ativar o serviço da ESET para obter o local personalizado dos dados do banco de dados

Para habilitar nosso serviço para obter o local personalizado dos dados do banco de dados, siga um dos três procedimentos abaixo usando o Microsoft SQL Server Management Studio:

  1. Conceda as permissões de "Visualizar qualquer definição" à conta NT AUTHORITY\SYSTEM (recomendado)
  2. Conceda a função de servidor "sysadmin" à conta NT AUTHORITY\SYSTEM
  3. Atribua a função de banco de dados "db_owner" ao banco de dados "master" na conta NT AUTHORITY\SYSTEM
A. Conceder as permissões "View any definition" (Exibir qualquer definição) à conta NT AUTHORITY\SYSTEM (recomendado)
Procedimento recomendado

Esse procedimento concede apenas direitos de leitura, portanto, há um impacto mínimo na segurança do sistema.

  1. Navegue até o Microsoft SQL Server Management Studio e conecte-se à instância escolhida do Microsoft SQL Server.

  2. Clique em Securables (Segurança). Na coluna Grant (Conceder ), marque a caixa de seleção ao lado de View any definition (Exibir qualquer definição). Clique em OK.

    Figura 2-1
B. Conceder a função de servidor "sysadmin" à conta NT AUTHORITY\SYSTEM
  1. Navegue até o Microsoft SQL Server Management Studio e conecte-se à instância do Microsoft SQL Server escolhida.

  2. Clique em Server Roles (Funções do servidor), marque a caixa de seleção ao lado de sysadmin e clique em OK.

    Figura 2-2
C. Atribua a função de banco de dados "db_owner" ao banco de dados "master" na conta NT AUTHORITY\SYSTEM
  1. Navegue até o Microsoft SQL Server Management Studio e conecte-se à instância escolhida do Microsoft SQL Server.

  2. Clique em User Mapping (Mapeamento de usuários). Na seção Usuários mapeados para este login, marque a caixa de seleção ao lado de master. Na seção Database role membership for, marque a caixa de seleção ao lado de db_owner. Clique em OK.

    Figura 2-3
Procedimentos a serem executados para cada instância do Microsoft SQL Server

O procedimento escolhido deve ser executado para cada instância do Microsoft SQL Server instalada no servidor.

Obtenha a lista de instâncias do Microsoft SQL Server instaladas em seu servidor.

Se estiver usando várias instâncias do Microsoft SQL Server em um único servidor, conecte-se a uma instância específica do Microsoft SQL Server.


Várias instâncias do MS SQL Server em um único servidor

Você pode se conectar a uma instância específica do Microsoft SQL Server usando a caixa de diálogo de conexão exibida quando você inicia o Microsoft SQL Server Management Studio:

  1. Navegue até o Microsoft SQL Server Management Studio e conecte-se ao servidor escolhido.

  2. Digite a instância no campo Nome do servidor no formato abaixo e clique em Conectar.

    <nome_do_servidor>\<nome_da_instância>

    Figura 3-1
Microsoft SQL Server Express

Alguns ambientes complexos ou instalações de serviços oferecem uma edição gratuita do Microsoft SQL Server chamada Microsoft SQL Server Express.

Essa edição do servidor SQL está disponível gratuitamente. Ela é limitada em tamanho e desempenho e é mais adequada para pequenas empresas.

Por exemplo, se você não fornecer seu próprio servidor Microsoft SQL durante a instalação do ESET PROTECT On-Prem, o Microsoft SQL Server Express será instalado por padrão.

Defina as permissões em cada instância com o Microsoft SQL Server Express

Se você ainda receber a mensagem de erro, verifique se você não tem uma instância do Microsoft SQL Server Express instalada. Se houver uma instância do Microsoft SQL Server Express, atualize as permissões descritas na primeira seção.

Obter a lista de instâncias do Microsoft SQL Server

Há várias maneiras de obter a lista de instâncias do Microsoft SQL Server instaladas no servidor:

  • Ao instalar uma nova instância do Microsoft SQL Server, na etapa em que você digita o nome da nova instância, o Assistente de Instalação exibirá uma lista das instâncias atualmente instaladas.

  • A lista de instâncias instaladas está localizada no seguinte caminho de registro do Windows:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\Nomes de instâncias

    Para obter a lista, use o seguinte comando do PowerShell:

    Get-Item "HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server\Instance Names\SQL" | % {$_.Property}
  • Cada instância do Microsoft SQL Server instala o serviço correspondente no sistema. O nome desse serviço tem o seguinte formato:

    SQL Server (<nome_da_instância>)

    Você pode filtrar esses serviços no sistema para obter uma lista das instâncias do Microsoft Server SQL instaladas usando o seguinte comando do PowerShell:

    Get-Service | ?{ $_.DisplayName -like "SQL Server (*" }