Compartir a través de


Configuración de cuentas y permisos de servicio de Windows para la extensión de Azure para SQL Server

Se aplica a:SQL Server

En este artículo se enumeran los permisos que concede la extensión de Azure para SQL Server a la NT Service\SQLServerExtension cuenta cuando se usan privilegios mínimos para las instancias de SQL Server habilitadas por Azure Arc. Con la configuración de privilegios mínimos, la extensión concede solo los permisos necesarios al habilitar las características en Azure Portal.

Note

NT Authority\System debe tener acceso para modificar permisos en directorios enumerados y claves del Registro. Este acceso es necesario para que NT Authority\System pueda conceder acceso necesario a la NT Service\SqlServerExtension cuenta para el modo de privilegios mínimos.

Overview

Al conectar SQL Server a Azure Arc con privilegios mínimos habilitados, la extensión de Azure Arc concede su cuenta de servicio, , NT SERVICE\SQLServerExtensionsolo los permisos que necesita cada característica al habilitar esa característica. La extensión quita automáticamente esos permisos si deshabilita la característica. Si una característica está inactiva, la extensión no concede ningún permiso para esa característica.

No se admite la configuración manual de los permisos de la cuenta del agente.

Note

Actualmente, la configuración con privilegios mínimos no se aplica de forma predeterminada.

Los servidores existentes con la versión 1.1.2859.223 de extensión o posterior tendrán aplicada la configuración con menos privilegios. Esta extensión se publicó en noviembre de 2024. Para evitar la aplicación automática de menor privilegio, bloquee las actualizaciones de extensión después de 1.1.2859.223.

En la sección Privilegios de SQL por característica se explican los permisos que concede la extensión al habilitar las siguientes características:

Permisos de directorio

Ruta de acceso del directorio Permisos necesarios Details Feature
<SystemDrive>\Packages\Plugins\Microsoft.AzureData.WindowsAgent.SQLServer Control total Archivos DLL y EXE relacionados con la extensión. Default
C:\Packages\Plugins\Microsoft.AzureData.WindowsAgent.SqlServer\<extension_version>\RuntimeSettings Control total Archivo de configuración de extensión. Default
C:\Packages\Plugins\Microsoft.AzureData.WindowsAgent.SqlServer\<extension_version>\status Control total Archivo de estado de extensión. Default
C:\ProgramData\GuestConfig\extension_logs\Microsoft.AzureData.WindowsAgent.SqlServer Control total Archivos de registro de extensión. Default
C:\Packages\Plugins\Microsoft.AzureData.WindowsAgent.SqlServer\<extension_version>\status\HeartBeat.Json Control total Archivo de latido de extensión. Default
%ProgramFiles%\Sql Server Extension Control total Archivos de servicio de extensión. Default
<SystemDrive>\Windows\system32\extensionUpload Control total Necesario para escribir el archivo de uso necesario para la facturación. Default
<SystemDrive>\Windows\system32\ExtensionHandler.log Control total Carpeta anterior al registro creada por extensión. Default
<ProgramData>\AzureConnectedMachineAgent\Config Read Directorio de archivos de configuración de Arc. Default
C:\Windows\System32\config\systemprofile\AppData\Local\Microsoft SQL Server Extension Agent Control total Necesario para escribir informes de evaluación y estado. Default
Directorio de registro de SQL (como se establece en el Registro) 1 :
C:\Program Files\Microsoft SQL Server\MSSQL<base_version>.<instance_name>\MSSQL\log
Read Necesario para extraer información de núcleos virtuales de SQL de los registros de SQL. Default
Directorio de copia de seguridad de SQL (como se establece en el Registro) 1 :
C:\Program Files\Microsoft SQL Server\MSSQL<base_version>.<instance_name>\MSSQL\Backup
ReadAndExecute/Write /Delete Necesario para las copias de seguridad Backup

1 Para obtener más información, vea Ubicaciones de archivos y asignación del Registro.

Permisos del Registro

Clave base: HKEY_LOCAL_MACHINE

Clave del Registro Permiso necesario Details Feature
SOFTWARE\Microsoft\Microsoft SQL Server Read Lea las propiedades de SQL Server como installedInstances. Default
SOFTWARE\Microsoft\Microsoft SQL Server\<InstanceRegistryName>\MSSQLSERVER Control total Microsoft Entra ID y Purview. Microsoft Entra ID

Purview
SOFTWARE\Microsoft\SystemCertificates Control total Se requiere para el identificador de Entra de Microsoft. Microsoft Entra ID
SYSTEM\CurrentControlSet\Services Read Nombre de la cuenta de SQL Server. Default
SOFTWARE\Microsoft\AzureDefender\SQL Read Estado de Azure Defender y hora de última actualización. Default
SOFTWARE\Microsoft\SqlServerExtension Control total Valores relacionados con la extensión. Default
SOFTWARE\Policies\Microsoft\Windows Lectura y escritura Habilitación de la actualización automática de Windows a través de la extensión. Actualizaciones automáticas

Permisos de grupo

NT Service\SQLServerExtension se agrega a las aplicaciones de extensión del agente híbrido. Esto permite que el protocolo de enlace de Azure Instance Metadata Service (IMDS) recupere el token de identidad administrada de recursos de máquina necesario para comunicarse con los servicios del plano de datos de Azure, como el servicio de procesamiento de datos (DPS) y el punto de conexión de telemetría para el uso de facturación, los registros de extensión y la recopilación de datos del panel de supervisión.

Permisos de SQL

La NT Service\SQLServerExtension cuenta se agrega:

  • Como inicio de sesión de SQL en todas las instancias presentes actualmente en la máquina
  • Como usuario de cada base de datos

La extensión también concede permisos a los objetos de instancia y de base de datos a medida que se habilitan las características.

Note

Los permisos mínimos dependen de las características habilitadas. La extensión actualiza los permisos cuando ya no son necesarios. Concede permisos necesarios al habilitar características.

NT Service\SQLServerExtension detalles del permiso de cuenta

Ruta de acceso del Registro Permiso Riesgo asociado en los permisos si la NT Service\SQLServerExtension cuenta está en peligro.
SOFTWARE\Microsoft\Microsoft SQL Server Read La extensión puede ver qué versiones de SQL Server están instaladas.
SOFTWARE\Microsoft\Microsoft SQL Server\\MSSQLSERVER Control total Solo es necesario cuando la autenticación de Microsoft Entra o Purview está habilitada. La extensión podría modificar la configuración de SQL Server.
SOFTWARE\Microsoft\SystemCertificates Control total Solo es necesario cuando la autenticación de Microsoft Entra está habilitada. La extensión podría reemplazar las entidades de certificación raíz de confianza.
SYSTEM\CurrentControlSet\Services Read La extensión puede ver los nombres de las cuentas de servicio.
SOFTWARE\Microsoft\AzureDefender\SQL Read La extensión puede aprender los tiempos de actualización y estado de Microsoft Defender.
SOFTWARE\Microsoft\SqlServerExtension Control total La extensión podría cambiar la configuración de la extensión.
SOFTWARE\Policies\Microsoft\Windows Lectura y escritura Solo es necesario cuando la actualización automática está habilitada. La extensión podría cambiar las directivas de Windows Update y deshabilitar Device Guard, que controla la integridad del código y la seguridad basada en virtualización, la exposición ampliada debido a revisiones perdidas.

Privilegios de SQL por característica

En la tabla siguiente se muestra el comportamiento predeterminado de las características que controlan los permisos concedidos por la extensión de Azure para SQL Server:

Feature Comportamiento predeterminado
Permisos de extensión predeterminados Habilitado de forma predeterminada
Copias de seguridad automatizadas Deshabilitado de manera predeterminada
Grupos de disponibilidad Habilitado de forma predeterminada
Valoración de procedimientos recomendados Deshabilitado de manera predeterminada
Evaluación de la migración Habilitado de forma predeterminada
Migración de bases de datos Habilitado de forma predeterminada
Restauración a un momento dado Deshabilitado de manera predeterminada
Purview Deshabilitado de manera predeterminada

Permisos de extensión predeterminados

Los siguientes permisos predeterminados son el requisito mínimo para el nivel básico de funcionalidad proporcionado por la extensión de Azure para SQL Server y se debe aplicar:

Tipo de objeto Nombre de la base de datos o del objeto Privilege
Database master VIEW DATABASE STATE
Database msdb ALTER ANY SCHEMA
Database msdb CREATE TABLE
Database msdb CREATE TYPE
Database msdb DB DATA READER
Database msdb DB DATA WRITER
Database msdb EXECUTE
Database msdb SELECT dbo.backupfile
Database msdb SELECT dbo.backupmediaset
Database msdb SELECT dbo.backupmediafamily
Database msdb SELECT dbo.backupset
Database msdb SELECT dbo.syscategories
Database msdb SELECT dbo.sysjobactivity
Database msdb SELECT dbo.sysjobhistory
Database msdb SELECT dbo.sysjobs
Database msdb SELECT dbo.sysjobsteps
Database msdb SELECT dbo.syssessions
Database msdb SELECT dbo.sysoperators
Database msdb SELECT dbo.suspectpages
Server CONNECT ANY DATABASE
Server CONNECT SQL
Server VIEW ANY DATABASE
Server VIEW ANY DEFINITION
Server VIEW SERVER STATE

Copias de seguridad automatizadas

Las copias de seguridad automatizadas están deshabilitadas de forma predeterminada. La extensión concede permisos de copia de seguridad a cualquier base de datos que tenga habilitadas las copias de seguridad automatizadas. La habilitación de la característica de copia de seguridad también habilita la característica de restauración a un momento dado , por lo que también se concede el permiso para crear una base de datos.

Si las características están habilitadas, la extensión concede automáticamente los siguientes permisos:

Tipo de objeto Nombre de la base de datos o del objeto Privilege
Database Todas las bases de datos DB BACKUP OPERATOR
Server CREATE ANY DATABASE
Server master DB CREATOR

Grupos de disponibilidad

Las características de administración y detección de grupos de disponibilidad, como la conmutación por error, están habilitadas de forma predeterminada, pero puede deshabilitarlas a través de la marca de AvailabilityGroupDiscovery características.

Si la característica está habilitada, la extensión concede automáticamente los siguientes permisos:

Tipo de objeto Nombre de la base de datos o del objeto Privilege
Server ALTER ANY AVAILABILITY GROUP
Server VIEW ANY DEFINITION

Valoración de procedimientos recomendados

La evaluación de procedimientos recomendados está deshabilitada de forma predeterminada.

Si la característica está habilitada, la extensión concede automáticamente los siguientes permisos:

Tipo de objeto Nombre de la base de datos o del objeto Privilege
Database master SELECT
Database master VIEW DATABASE STATE
Database msdb SELECT
Server VIEW ANY DATABASE
Server VIEW ANY DEFINITION
Server VIEW SERVER STATE
StoredProcedure EnumErrorLogsSP EXECUTE
StoredProcedure ReadErrorLogsSP EXECUTE

Migración de bases de datos

La característica Migración de base de datos está habilitada de forma predeterminada y solo requiere los permisos enumerados en los permisos de extensión predeterminados, aunque se conceden algunos permisos usados por la característica de migración de base de datos a los permisos Just-In-Time cuando se realiza una acción de migración específica.

Las siguientes acciones requieren permisos adicionales que la extensión concede Just-In-Time:

Note

Los usuarios con los SqlServerAvailabilityGroups_CreateManagedInstanceLinkpermisos , SqlServerAvailabilityGroups_failoverMiLinky SqlServerAvailabilityGroups_deleteMiLink de Azure pueden realizar acciones en la página Migración de base de datos durante el proceso de migración que eleva los permisos de SQL Server de la cuenta usada por la extensión, incluido el sysadmin rol .

En el paso Migrar datos , la extensión concede permisos Just-In-Time al seleccionar Iniciar migración de datos en la pestaña Revisar y crear para una migración de vínculos de Instancia administrada. La cuenta de servicio necesita permisos elevados para configurar el grupo de disponibilidad distribuido. Revoca los permisos una vez creado el grupo de disponibilidad distribuido y la implementación visible en Azure Portal está en estado completado. Si se ejecuta otra migración al mismo tiempo, la extensión no revoca los permisos hasta que se cree el último grupo de disponibilidad distribuido.

La acción para crear una migración de vínculo de Instancia administrada adquiere los permisos siguientes durante la solicitud de creación:

Tipo de objeto Nombre de la base de datos o del objeto Privilege
Server CREATE AVAILABILITY GROUP
Server ALTER ANY AVAILABILITY GROUP
Server ALTER ANY DATABASE
Server CREATE ENDPOINT
Server ALTER ANY ENDPOINT
Server CREATE CERTIFICATE
Database master IMPERSONATE ON USER::[dbo]

En el paso Supervisión y transición , la extensión concede permisos Just-In-Time al seleccionar la opción Completar transición para una migración de vínculos de Instancia administrada. La extensión revoca los permisos una vez completada la transición.

La acción para completar la transición de una migración de vínculo de Instancia administrada adquiere los siguientes permisos durante la solicitud completa:

Tipo de objeto Nombre de la base de datos o del objeto Privilege
Server CREATE AVAILABILITY GROUP
Server ALTER ANY AVAILABILITY GROUP
Server ALTER ANY DATABASE
Server sysadmin 1

1 Si el privilegio mínimo está habilitado, la acción de transición completa también concede el sysadmin rol a la NT Service\SQLServerExtension cuenta durante la transición. Este rol es necesario para conmutar por error el grupo de disponibilidad distribuido para la migración a Azure SQL Managed Instance.

En el paso Supervisión y transición, la extensión concede permisos Just-In-Time al seleccionar la opción Cancelar migración para una migración de vínculo de Instancia administrada. La extensión revoca los permisos después de cancelar la migración.

La acción para cancelar una migración de vínculo de Instancia administrada adquiere los siguientes permisos durante la solicitud de cancelación:

Tipo de objeto Nombre de la base de datos o del objeto Privilege
Server ALTER ANY AVAILABILITY GROUP
Server ALTER ANY DATABASE
Server sysadmin 1

1 Si el privilegio mínimo está habilitado, la acción cancelar también concede el sysadmin rol a la NT Service\SQLServerExtension cuenta mientras dure la solicitud de cancelación. Este rol es necesario al eliminar un grupo de disponibilidad distribuido.

Evaluación de migraciones

Las evaluaciones de migración están habilitadas de forma predeterminada.

Si la característica está deshabilitada, la extensión revoca los siguientes permisos a menos que otras características habilitadas las requieran:

Tipo de objeto Nombre de la base de datos o del objeto Privilege
Database Todas las bases de datos SELECT sys.sqlexpressiondependencies
Database msdb EXECUTE dbo.agentdatetime
Database msdb SELECT dbo.syscategories
Database msdb SELECT dbo.sysjobhistory
Database msdb SELECT dbo.sysjobs
Database msdb SELECT dbo.sysjobsteps
Database msdb SELECT dbo.sysmailaccount
Database msdb SELECT dbo.sysmailprofile
Database msdb SELECT dbo.sysmailprofileaccount
Database msdb SELECT dbo.syssubsystems

Purview

Las características de Purview están deshabilitadas de forma predeterminada.

Si la característica está habilitada, la extensión concede automáticamente los siguientes permisos:

Tipo de objeto Nombre de la base de datos o del objeto Privilege
Database Todas las bases de datos EXECUTE
Database Todas las bases de datos SELECT
Server CONNECT ANY DATABASE
Server VIEW ANY DATABASE

Permisos Just-In-Time de SQL

Algunos permisos de SQL solo se asignan en el momento en que se necesitan para realizar una acción específica y se revocan tan pronto como se complete la operación que requiere los permisos. Si la revocación no se ejecuta, un trabajo de limpieza en segundo plano que se ejecuta cada 50 minutos revoca automáticamente los permisos que han quedado obsoletos.

Los permisos Just-In-Time se asignan a la cuenta de servicio:

  • NT Service\SQLServerExtension si el privilegio mínimo está habilitado
  • Cuenta del sistema local si el privilegio mínimo está deshabilitado.

Actualmente, la siguiente característica usa permisos Just-In-Time:

Permisos adicionales

  • Permisos para la cuenta de servicio para acceder al servicio de extensión y configurar la conmutación automática.
  • Derechos de inicio de sesión como servicio para la cuenta de servicio.