[KB8406] Añadir permisos para obtener ubicaciones de datos de bases de datos para generar exclusiones automáticas para Microsoft SQL Server en productos ESET Windows Server

NOTA:

Esta página ha sido traducida por un ordenador. Haga clic en Inglés bajo Idiomas en esta página para mostrar el texto original. Si encuentra algo que no está claro, por favor, póngase en contacto con su soporte local.

Problema

Solución

Aparece un error al obtener la ubicación personalizada de los datos de la base de datos

Las exclusiones automáticas para Microsoft SQL Server consisten principalmente en ubicaciones predeterminadas de archivos de bases de datos. Sin embargo, también consta de rutas en las que los archivos de base de datos se almacenan en ubicaciones personalizadas. En este caso, la cuenta NT AUTHORITY\SYSTEM debe tener los derechos adecuados para extraer esta información de la base de datos maestra.

En Microsoft SQL Server 2016 y versiones posteriores, Microsoft eliminó el rol de servidor sysadmin para la cuenta NT AUTHORITY\SYSTEM, lo que provoca que los productos ESET Windows Server pierdan el acceso a los datos de la base de datos maestra, que contiene las ubicaciones de los datos de la base de datos de la instancia de Microsoft SQL Server.

Los productos ESET Windows Server informan de este problema a través del mensaje de error. Haga clic en Archivos de registro, seleccione Eventos en el menú desplegable y vea el mensaje de error:

"Se ha producido un error al cargar archivos de base de datos de las bases de datos de Microsoft SQL Server. Compruebe si la cuenta 'NT AUTHORITY\SYSTEM' tiene permisos suficientes para leer datos de las vistas de sistema de las bases de datos maestras"

Figura 1-1
Haga clic en la imagen para ampliarla en una ventana nueva
Si no puede realizar ningún cambio por motivos de seguridad
  • Si no puede realizar ningún cambio, las exclusiones automáticas consistirán únicamente en ubicaciones predeterminadas.
  • Si tiene algunos archivos de base de datos ubicados en una ubicación o ubicaciones específicas (no en la ruta predeterminada), añada esta ruta o rutas manualmente o a las exclusiones.
  • Si todos los archivos de base de datos se encuentran únicamente en las ubicaciones predeterminadas, ignore este error.


Habilitar el servicio ESET para obtener la ubicación personalizada de los datos de la base de datos

Para permitir que nuestro servicio obtenga la ubicación personalizada de los datos de la base de datos, siga uno de los tres procedimientos siguientes mediante Microsoft SQL Server Management Studio:

  1. Conceda los permisos 'Ver cualquier definición' a la cuenta NT AUTHORITY\SYSTEM (recomendado)
  2. Conceder el rol de servidor 'sysadmin' a la cuenta NT AUTHORITY\SYSTEM
  3. Asigne el rol de base de datos 'db_owner' a la base de datos 'master' en la cuenta NT AUTHORITY\SYSTEM
A. Conceder los permisos "Ver cualquier definición" a la cuenta NT AUTHORITY\SYSTEM (recomendado)
Procedimiento recomendado

Este procedimiento sólo concede derechos de lectura, por lo que el impacto en la seguridad del sistema es mínimo.

  1. Acceda a Microsoft SQL Server Management Studio y conéctese a la instancia de Microsoft SQL Server seleccionada.

  2. Haga clic en Valores. En la columna Conceder, active la casilla de verificación situada junto a Ver cualquier definición. Haga clic en Aceptar.

    Figura 2-1
B. Conceder el rol de servidor 'sysadmin' a la cuenta NT AUTHORITY\SYSTEM
  1. Vaya a Microsoft SQL Server Management Studio y conéctese a la instancia de Microsoft SQL Server seleccionada.

  2. Haga clic en Server Roles (Funciones del servidor), active la casilla situada junto a sysadmin y haga clic en OK (Aceptar).

    Figura 2-2
C. Asigne el rol de base de datos 'db_owner' a la base de datos 'master' en la cuenta NT AUTHORITY\SYSTEM
  1. Navegue a Microsoft SQL Server Management Studio y conéctese a la instancia de Microsoft SQL Server elegida.

  2. Haga clic en Asignación de usuarios. En la sección Usuarios asignados a este inicio de sesión, seleccione la casilla situada junto a maestro. En la sección Database role membership for, seleccione la casilla de verificación situada junto a db_owner. Haga clic en Aceptar.

    Figura 2-3
Procedimientos que deben realizarse para cada instancia de Microsoft SQL Server

El procedimiento elegido debe realizarse para cada instancia de Microsoft SQL Server instalada en el servidor.

Obtenga la lista de instancias de Microsoft SQL Server instaladas en su servidor.

Si utiliza varias instancias de Microsoft SQL Server en un único servidor, conéctese a una instancia específica de Microsoft SQL Server.


Varias instancias de MS SQL Server en un único servidor

Puede conectarse a una instancia específica de Microsoft SQL Server mediante el cuadro de diálogo de conexión que aparece al iniciar Microsoft SQL Server Management Studio:

  1. Vaya a Microsoft SQL Server Management Studio y conéctese al servidor elegido.

  2. Escriba la instancia en el campo Nombre del servidor con el formato que se indica a continuación y haga clic en Conectar.

    <nombre_servidor>\<nombre_instancia>

    Figura 3-1
Microsoft SQL Server Express

Algunos entornos complejos o instalaciones de servicios ofrecen una edición gratuita de Microsoft SQL Server denominada Microsoft SQL Server Express.

Esta edición de SQL Server está disponible de forma gratuita. Tiene un tamaño y rendimiento limitados y es más adecuada para pequeñas empresas.

Por ejemplo, si no proporciona su propio servidor Microsoft SQL durante la instalación de ESET PROTECT On-Prem, Microsoft SQL Server Express se instala de forma predeterminada.

Establezca permisos en cada instancia con Microsoft SQL Server Express

Si sigue recibiendo el mensaje de error, compruebe que no tiene instalada una instancia de Microsoft SQL Server Express. Si hay una instancia de Microsoft SQL Server Express, actualice los permisos descritos en la primera sección.

Obtención de la lista de instancias de Microsoft SQL Server

Existen varias formas de obtener la lista de instancias de Microsoft SQL Server instaladas en el servidor:

  • Al instalar una nueva instancia de Microsoft SQL Server, en el paso en el que se escribe el nombre de la nueva instancia, el Asistente de instalación mostrará una lista de las instancias instaladas actualmente.

  • La lista de instancias instaladas se encuentra en la siguiente ruta del registro de Windows

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\Nombres de Instancias

    Para obtener la lista, utilice el siguiente comando de PowerShell:

    Get-Item "HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server\NombresDeInstancia\SQL" | % {$_.Property}
  • Cada instancia de Microsoft SQL Server instala el servicio correspondiente en el sistema. El nombre de este servicio tiene el siguiente formato:

    SQL Server (<nombre_de_instancia>)

    Puede filtrar estos servicios en el sistema para obtener una lista de las instancias de Microsoft Server SQL instaladas mediante el siguiente comando de PowerShell:

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