Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
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 predeterminados para la extensión
- Copias de seguridad automatizadas
- Grupos de disponibilidad
- Valoración de procedimientos recomendados
- Evaluación de la migración
- Migración de bases de datos
- Restauración a un momento dado
- Purview
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:
- Creación de una migración de vínculos de Instancia administrada
- Migración completa de vínculos de Instancia administrada
- Cancelación de la migración de vínculos de Instancia administrada
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 .
Creación de una migración de vínculos de Instancia administrada
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] |
Migración completa de vínculos de Instancia administrada
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.
Cancelación de la migración de vínculos de Instancia administrada
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\SQLServerExtensionsi 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:
- Migración de base de datos al usar la opción de migración de vínculos de Instancia administrada.
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.