Configurar los permisos y las cuentas de servicio de Windows
Cada servicio de SQL Server representa un proceso o conjunto de procesos para administrar la autenticación de las operaciones de SQL Server con Windows. En este tema se describe la configuración predeterminada de los servicios en esta versión de SQL Server, así como las opciones de configuración de los servicios de SQL Server que se pueden establecer durante la instalación de SQL Server y después.
Contenido
Este tema está dividido en las siguientes secciones:
Servicios instalados por SQL Server
En función de los componentes que decida instalar, el programa de instalación de SQL Server instalará los servicios siguientes:
Servicios de bases de datos de SQL Server: servicio del Motor de base de datos relacional de SQL Server. El archivo ejecutable es <MSSQLPATH>\MSSQL\Binn\sqlservr.exe.
Agente SQL Server: ejecuta trabajos, supervisa SQL Server, activa alertas y habilita la automatización de algunas tareas administrativas. El servicio Agente SQL Server está presente pero deshabilitado en las instancias de SQL Server Express. El archivo ejecutable es <MSSQLPATH>\MSSQL\Binn\sqlagent.exe.
Analysis Services: proporciona funcionalidad de procesamiento analítico en línea (OLAP) y minería de datos a las aplicaciones de inteligencia empresarial. El archivo ejecutable es <MSSQLPATH>\OLAP\Bin\msmdsrv.exe.
Reporting Services: administra, ejecuta, crea, programa y envía informes. El archivo ejecutable es <MSSQLPATH>\Reporting Services\ReportServer\Bin\ReportingServicesService.exe.
Integration Services: proporciona funcionalidad de administración para el almacenamiento y la ejecución de paquetes de Integration Services. La ruta de acceso ejecutable es <MSSQLPATH>\120\DTS\Binn\MsDtsSrvr.exe
SQL Server Browser: servicio de resolución de nombres que proporciona información de conexión de SQL Server a los equipos cliente. La ruta de acceso ejecutable es c:\Archivos de programa (x86)\Microsoft SQL Server\90\Shared\sqlbrowser.exe
Búsqueda de texto completo: crea rápidamente índices de texto completo del contenido y de las propiedades de los datos estructurados y semiestructurados para permitir el filtrado de documentos y la separación de palabras en SQL Server.
Objeto de escritura de SQL : permite que las aplicaciones de copia de seguridad y restauración funcionen en el marco del Servicio de instantáneas de volumen (VSS).
SQL Server Distributed Replay Controller: proporciona la orquestación de la reproducción de seguimiento en varios equipos cliente de Distributed Replay.
SQL Server Distributed Replay Client: uno o más equipos cliente de Distributed Replay que funcionan con un controlador de Distributed Replay para simular cargas de trabajo simultáneas en una instancia del Motor de base de datos de SQL Server.
Propiedades de servicio y configuración
Las cuentas de inicio usadas para iniciar y ejecutar SQL Server pueden ser cuentas de usuario de dominio, cuentas de usuario local, cuentas de servicio administradas, cuentas virtuales o cuentas del sistema integradas. Para poder iniciarse y ejecutarse, cada servicio de SQL Server debe tener una cuenta de inicio configurada durante la instalación.
En esta sección se describen las cuentas que se pueden configurar para iniciar los servicios de SQL Server, los valores predeterminados que usa el programa de instalación de SQL Server, el concepto de SID por servicio, las opciones de inicio y la configuración del firewall.
Cuentas de servicio predeterminadas
En la tabla siguiente se enumeran las cuentas de servicio predeterminadas que utiliza el programa de instalación para instalar todos los componentes. Las cuentas predeterminadas enumeradas son las recomendadas, si no se especifica lo contrario.
Servidor independiente o controlador de dominio
Componente | Windows Server 2008 | Windows 7 y Windows Server 2008 R2 y versiones posteriores |
---|---|---|
Motor de base de datos | SERVICIO DE RED | Cuenta virtual * |
Agente SQL Server | SERVICIO DE RED | Cuenta virtual * |
SSAS | SERVICIO DE RED | Cuenta virtual * |
SSIS | SERVICIO DE RED | Cuenta virtual * |
SSRS | SERVICIO DE RED | Cuenta virtual * |
SQL Server Distributed Replay Controller | SERVICIO DE RED | Cuenta virtual * |
SQL Server Distributed Replay Client | SERVICIO DE RED | Cuenta virtual * |
Selector de FD (búsqueda de texto completo) | SERVICIO LOCAL | Cuenta virtual |
SQL Server Browser | SERVICIO LOCAL | SERVICIO LOCAL |
SQL Server VSS Writer | SISTEMA LOCAL | SISTEMA LOCAL |
* Cuando se necesitan recursos externos al equipo con SQL Server, Microsoft recomienda usar una cuenta de servicio administrada (MSA), configurada con los privilegios mínimos necesarios.
Instancia de clústeres de conmutación por error de SQL Server
Componente | Windows Server 2008 | Windows Server 2008 R2 |
---|---|---|
Motor de base de datos | Ninguno. Proporcione una cuenta de usuario de dominio . | Proporcione una cuenta de usuario de dominio . |
Agente SQL Server | Ninguno. Proporcione una cuenta de usuario de dominio . | Proporcione una cuenta de usuario de dominio . |
SSAS | Ninguno. Proporcione una cuenta de usuario de dominio . | Proporcione una cuenta de usuario de dominio . |
SSIS | SERVICIO DE RED | Cuenta virtual |
SSRS | SERVICIO DE RED | Cuenta virtual |
Selector de FD (búsqueda de texto completo) | SERVICIO LOCAL | Cuenta virtual |
SQL Server Browser | SERVICIO LOCAL | SERVICIO LOCAL |
SQL Server VSS Writer | SISTEMA LOCAL | SISTEMA LOCAL |
Cambiar las propiedades de las cuentas
Importante
- Utilice siempre herramientas de SQL Server, como el Administrador de configuración de SQL Server, para cambiar la cuenta que utilizan los servicios Motor de base de datos de SQL Server o Agente SQL Server, o para cambiar la contraseña de la cuenta. Además de cambiar el nombre de cuenta, el Administrador de configuración de SQL Server realiza una configuración adicional, como actualizar el almacén de seguridad local de Windows que protege la clave maestra de servicio para el Motor de base de datos. Otras herramientas, como el Administrador de control de servicios de Windows, pueden cambiar el nombre de la cuenta, pero no toda la configuración requerida.
- En el caso de las instancias de Analysis Services que implemente en una granja de Servidores de SharePoint, use siempre Administración central de SharePoint para cambiar las cuentas de servidor para las aplicaciones de servicio PowerPivot y el servicio Analysis Services. Se actualizan la configuración y los permisos asociados para usar la nueva información de cuenta cuando utilice Administración central.
- Para cambiar las opciones de Reporting Services, utilice la herramienta de configuración de Reporting Services.
Nuevos tipos de cuenta disponibles con Windows 7 y Windows Server 2008 R2
Windows 7 y Windows Server 2008 R2 tienen dos nuevos tipos de cuentas de servicio denominadas cuentas de servicio administradas (MSA) y cuentas virtuales. Las cuentas de servicio administradas y las cuentas virtuales están diseñadas para proporcionar aplicaciones cruciales, como SQL Server, con el aislamiento de sus propias cuentas, a la vez que se elimina la necesidad de que un administrador administre manualmente el nombre de entidad de seguridad de servicio (SPN) y las credenciales de estas cuentas. Estas cuentas facilitan en gran medida la administración a largo plazo de los usuarios de cuentas de servicio, las contraseñas y los SPN.
Cuentas de servicio administradas
Una cuenta de servicio administrada (MSA) es un tipo de cuenta de dominio creada y administrada por el controlador de dominio. Se asigna a un solo equipo de miembro para usarla al ejecutar un servicio. El controlador de dominio administra la contraseña automáticamente. No puede utilizar MSA para iniciar sesión en un equipo, pero un equipo puede utilizar MSA para iniciar un servicio de Windows. Una MSA puede registrar el nombre principal de servicio (SPN) con Active Directory. Una MSA se denomina con un sufijo $ , por ejemplo, DOMINIO\NOMBREDECUENTA$. Al especificar MSA, deje en blanco la contraseña. Debido a que una MSA se asigna a un único equipo, no se puede utilizar en nodos diferentes de un clúster de Windows.
Nota:
El administrador de dominio debe crear la MSA en Active Directory para que la instalación de SQL Server pueda usarla para los servicios de SQL Server.
Cuentas de servicio administradas de grupo
Una cuenta de servicio administrada de grupo es una MSA para varios servidores. Windows administra una cuenta de servicio para los servicios que se ejecutan en un grupo de servidores. Active Directory actualiza automáticamente la contraseña de la cuenta de servicio administrada de grupo sin necesidad de reiniciar los servicios. Puede configurar los servicios de SQL Server para usar una entidad de servicio administrada de grupo. A partir de SQL Server 2014, SQL Server admite cuentas de servicio administradas de grupo para instancias independientes.
Para usar una cuenta de servicio administrada de grupo para SQL Server 2014 o posterior, el sistema operativo debe ser Windows Server 2012 R2 o posterior. Los servidores con Windows Server 2012 R2 necesitan que KB 2998082 esté aplicado para que los servicios puedan iniciar sesión sin interrumpirse inmediatamente después de un cambio de contraseña.
Para obtener más información, vea Group Managed Service Accounts (Cuentas de servicio administradas de grupo).
Nota:
El administrador de dominio debe crear la cuenta de servicio administrada de grupo en Active Directory antes de que el programa de instalación de SQL Server pueda usarla para los servicios de SQL Server.
-
Las cuentas virtuales (a partir de Windows Server 2008 R2 y Windows 7) son cuentas locales administradas que proporcionan las siguientes características para simplificar la administración del servicio. La cuenta virtual se administra automáticamente y la cuenta virtual puede tener acceso a la red en un entorno de dominio. Si se usa el valor predeterminado de las cuentas de servicio durante la instalación de SQL Server, se usará una cuenta virtual con el nombre de instancia como nombre del servicio, con el formato NT SERVICE\<NOMBRE_DEL_SERVICIO>. Los servicios que se ejecutan como cuentas virtuales acceden a los recursos de red usando las credenciales de la cuenta del equipo con el formato <nombre_de_dominio>\<nombre_de_equipo>$. Al especificar una cuenta virtual para iniciar SQL Server, deje en blanco la contraseña. Si la cuenta virtual no puede registrar el nombre principal de servicio (SPN), registre el SPN manualmente. Para más información sobre cómo registrar un SPN manualmente, consulte Registro manual de SPN.
Nota:
Las cuentas virtuales no se pueden usar para la instancia de clúster de conmutación por error de SQL Server, ya que la cuenta virtual no tendría el mismo SID en cada nodo del clúster.
En la tabla siguiente se muestran ejemplos de nombres de cuenta virtuales.
Servicio Nombre de cuenta virtual Instancia predeterminada del servicio Motor de base de datos NT SERVICE\MSSQLSERVER Instancia con nombre de un servicio Motor de base de datos denominado PAYROLL NT SERVICE\MSSQL$PAYROLL Servicio Agente SQL Server en la instancia predeterminada de SQL Server NT SERVICE\SQLSERVERAGENT Servicio Agente SQL Server en una instancia de SQL Server denominada PAYROLL NT SERVICE\SQLAGENT$PAYROLL
Para obtener más información sobre las cuentas de servicio administradas y las cuentas virtuales, vea la sección Managed service account and virtual account concepts (Conceptos de cuentas de servicio administradas y cuentas virtuales) de Service Accounts Step-by-Step Guide (Guía paso a paso de cuentas de servicio) y Managed Service Accounts Frequently Asked Questions (FAQ) (P+F sobre cuentas de servicio administradas).
Nota de seguridad: Ejecute siempre los servicios de SQL Server mediante los derechos de usuario más bajos posibles. Use una cuenta virtual o MSA siempre que sea posible. Cuando la MSA y las cuentas virtuales no son posibles, use una cuenta de usuario o una cuenta de dominio específicas con pocos privilegios en lugar de una cuenta compartida para los servicios de SQL Server. Utilice cuentas independientes para los diferentes servicios de SQL Server. No conceda permisos adicionales a la cuenta de servicio de SQL Server ni a los grupos de servicios. Los permisos se concederán a través de la pertenencia a un grupo o se concederán directamente a un SID por servicio, siempre que se admita su uso.
Inicio automático
Además de las cuentas de usuario, cada servicio tiene tres posibles estados de inicio que los usuarios pueden controlar:
Deshabilitado El servicio se ha instalado, pero no se ejecuta actualmente.
Manual : el servicio se ha instalado, pero solo se iniciará cuando otro servicio o aplicación necesite su funcionalidad.
Automático : el sistema operativo inicia automáticamente el servicio.
El estado de inicio se selecciona durante la instalación. Al instalar una instancia con nombre, el servicio SQL Server Browser debe configurarse para que se inicie automáticamente.
Servicios de configuración durante la instalación desatendida
En la tabla siguiente se muestran los servicios de SQL Server que se pueden configurar durante la instalación. En instalaciones desatendidas, puede usar los modificadores en un archivo de configuración o en el símbolo del sistema.
Nombre de servicio SQL Server | Conmutadorespara instalaciones desatendidas 1 |
---|---|
MSSQLSERVER | SQLSVCACCOUNT, SQLSVCPASSWORD, SQLSVCSTARTUPTYPE |
SQLServerAgent2 | AGTSVCACCOUNT, AGTSVCPASSWORD, AGTSVCSTARTUPTYPE |
MSSQLServerOLAPService | ASSVCACCOUNT, ASSVCPASSWORD, ASSVCSTARTUPTYPE |
ReportServer | RSSVCACCOUNT, RSSVCPASSWORD, RSSVCSTARTUPTYPE |
Integration Services | ISSVCACCOUNT, ISSVCPASSWORD, ISSVCSTARTUPTYPE |
SQL Server Distributed Replay Controller | DRU_CTLR, CTLRSVCACCOUNT, CTLRSVCPASSWORD, CTLRSTARTUPTYPE, CTLRUSERS |
SQL Server Distributed Replay Client | DRU_CLT, CLTSVCACCOUNT, CLTSVCPASSWORD, CLTSTARTUPTYPE, CLTCTLRNAME, CLTWORKINGDIR, CLTRESULTDIR |
1Para obtener más información y sintaxis de ejemplo para instalaciones desatendidas, vea Instalación de SQL Server 2014 desde el símbolo del sistema.
2El servicio Agente SQL Server está deshabilitado en instancias de SQL Server Express y SQL Server Express con Advanced Services.
Puerto de firewall
En la mayoría de los casos, cuando se instala por primera vez, la instancia del Motor de base de datos puede conectarse a herramientas como SQL Server Management Studio instaladas en el mismo equipo que SQL Server. El programa de instalación de SQL Server no abre puertos en el firewall de Windows. Puede que no sean posibles conexiones desde otros equipos hasta que el Motor de base de datos se configure para escuchar en un puerto TCP y se abra el puerto correspondiente para conexiones en el Firewall de Windows. Para más información, consulte Configurar Firewall de Windows para permitir el acceso a SQL Server.
Permisos de servicio
En esta sección se describen los permisos que el programa de instalación de SQL Server configura para el SID por servicio de los servicios de SQL Server.
Permisos del sistema de archivos concedidos a otras cuentas de usuario o grupos de Windows
Permisos del sistema de archivos relacionados con las ubicaciones inusuales de los discos
Configuración del servicio y control de acceso
SQL Server 2014 permite que el SID por servicio para cada uno de sus servicios proporcione aislamiento de servicio y defensa en profundidad. El SID por servicio se deriva del nombre del servicio y es único para ese servicio. Por ejemplo, un nombre de SID de servicio para el servicio Motor de base de datos podría ser NT Service\MSSQL$<InstanceName.> El aislamiento del servicio permite obtener acceso a objetos concretos sin necesidad de ejecutar una cuenta con un alto nivel de privilegios ni debilitar la protección de seguridad del objeto. Usando una entrada de control de acceso que contenga un SID por servicio, un servicio de SQL Server puede restringir el acceso a sus recursos.
Nota:
En Windows 7 y Windows Server 2008 R2 (y versiones posteriores) el SID por servicio puede ser la cuenta virtual que utiliza el servicio.
Para la mayoría de los componentes, SQL Server configura la ACL para la cuenta del servicio directamente, con lo que el cambio de la cuenta de servicio puede realizarse sin tener que repetir el proceso de la ACL de recursos.
Al instalar SSAS, se crea un SID por servicio para el servicio Analysis Services. Se crea un grupo de Windows local y se le asigna un nombre con el formato SQLServerMSASUser$computer_name$instance_name. Al SID por servicio NT SERVICE\MSSQLServerOLAPService se le concede la pertenencia al grupo local de Windows y al grupo local de Windows se le conceden los permisos adecuados en la ACL. Si se cambia la cuenta que se usa para iniciar el servicio Analysis Services, Administrador de configuración de SQL Server debe cambiar algunos permisos de Windows (como el derecho a iniciar sesión como servicio), pero los permisos asignados al grupo local de Windows seguirán estando disponibles sin ninguna actualización, ya que el SID por servicio no ha cambiado. Este método permite cambiar el nombre del servicio de Analysis Services durante las actualizaciones.
Durante la instalación de SQL Server, el programa de instalación de SQL Server crea grupos de Windows locales para SSAS y el servicio SQL Server Browser. Para estos servicios, SQL Server configura la ACL para los grupos de Windows locales.
En función de la configuración del servicio, la cuenta de servicio o el SID por servicio se agregará como miembro del grupo de servicios durante el proceso de instalación o actualización.
Derechos y privilegios de Windows
La cuenta asignada para iniciar un servicio necesita el permiso de inicio, detener y pausar para el servicio. El programa de instalación de SQL Server asigna esto automáticamente. Primera instalación de las Herramientas de administración remota del servidor (RSAT). Vea las Herramientas de administración remota del servidor para Windows 7.
En la tabla siguiente se muestran los permisos que el programa de instalación de SQL Server solicita para los SID por servicio o los grupos locales de Windows que usan los componentes de SQL Server.
Servicio de SQL Server | Permisos concedidos por el programa de instalación de SQL Server |
---|---|
Motor de base de datos de SQL Server: (Todos los derechos se conceden al SID por servicio. Instancia predeterminada: NT SERVICE\MSSQLSERVER. Instancia con nombre: **NT SERVICE\MSSQL$**InstanceName. |
Iniciar sesión como servicio (SeServiceLogonRight) Reemplazar un token de nivel de proceso (SeAssignPrimaryTokenPrivilege) Omitir comprobación de recorrido (SeChangeNotifyPrivilege) Ajustar las cuotas de la memoria para un proceso (SeIncreaseQuotaPrivilege) Permiso para iniciar el objeto de escritura de SQL Permiso para leer el servicio Registro de eventos Permiso para leer el servicio Llamada a procedimiento remoto |
Agente SQL Server: 1 Todos los derechos se conceden al SID por servicio. Instancia predeterminada: NT Service\SQLSERVERAGENT. Instancia con nombre: NT Service\SQLAGENT$NombreDeInstancia. |
Iniciar sesión como servicio (SeServiceLogonRight) Reemplazar un token de nivel de proceso (SeAssignPrimaryTokenPrivilege) Omitir comprobación de recorrido (SeChangeNotifyPrivilege) Ajustar las cuotas de la memoria para un proceso (SeIncreaseQuotaPrivilege) |
SSAS: (Todos los derechos se conceden a un grupo de Windows local. Instancia predeterminada: SQLServerMSASUser$ComputerName$MSSQLSERVER. Instancia con nombre: SQLServerMSASUser$ComputerName$InstanceName. Instancia de PowerPivot para SharePoint: SQLServerMSASUser$ComputerName$PowerPivot). |
Iniciar sesión como servicio (SeServiceLogonRight) Solo para modo tabular: Aumentar el espacio de trabajo de un proceso (SeIncreaseWorkingSetPrivilege) Ajustar las cuotas de la memoria para un proceso (SeIncreaseQuotaSizePrivilege) Bloquear páginas en la memoria (SeLockMemoryPrivilege): solo es necesario cuando la paginación está completamente desactivada. Solo para la instalación de clústeres de conmutación por error: Aumentar prioridad de programación (SeIncreaseBasePriorityPrivilege) |
SSRS: (Todos los derechos se conceden al SID por servicio. Instancia predeterminada: NT SERVICE\ReportServer. Instancia con nombre: NT SERVICE\$InstanceName). |
Iniciar sesión como servicio (SeServiceLogonRight) |
SSIS: (Todos los derechos se conceden al SID por servicio. Instancia predeterminada e instancia con nombre: NT SERVICE\MsDtsServer120. Integration Services no tiene un proceso independiente para una instancia con nombre). |
Iniciar sesión como servicio (SeServiceLogonRight) Permiso para escribir en el registro de eventos de la aplicación Omitir comprobación de recorrido (SeChangeNotifyPrivilege) Suplantar a un cliente tras la autenticación (SeImpersonatePrivilege) |
Búsqueda de texto completo: Todos los derechos se conceden al SID por servicio. Instancia predeterminada: NT Service\MSSQLFDLauncher. Instancia con nombre: NT Service\ MSSQLFDLauncher$NombreDeInstancia. |
Iniciar sesión como servicio (SeServiceLogonRight) Ajustar las cuotas de la memoria para un proceso (SeIncreaseQuotaPrivilege) Omitir comprobación de recorrido (SeChangeNotifyPrivilege) |
SQL Server Browser: (Todos los derechos se conceden a un grupo de Windows local. Instancia predeterminada o con nombre: SQLServer2005SQLBrowserUser$ComputerName. SQL Server Browser no tiene un proceso independiente para una instancia con nombre). |
Iniciar sesión como servicio (SeServiceLogonRight) |
SQL Server VSS Writer: (Todos los derechos se conceden al SID por servicio. Instancia predeterminada o con nombre: NT Service\SQLWriter. VSS Writer de SQL Server no tiene un proceso independiente para una instancia con nombre). |
El servicio SQLWriter se ejecuta en la cuenta de sistema local que tiene todos los permisos necesarios. El programa de instalación de SQL Server no comprueba ni concede permisos para este servicio. |
SQL Server Distributed Replay Controller: | Iniciar sesión como servicio (SeServiceLogonRight) |
SQL Server Distributed Replay Client: | Iniciar sesión como servicio (SeServiceLogonRight) |
1El servicio Agente SQL Server está deshabilitado en instancias de SQL Server Express.
Permisos del sistema de archivos concedidos a SID por servicio de SQL Server o grupos locales de Windows
Las cuentas de servicio de SQL Server deben tener acceso a los recursos. Las listas de control de acceso se establecen para el SID por servicio o el grupo local de Windows.
Importante
En las instalaciones de clústeres de conmutación por error, los recursos de discos compartidos se deben establecer en una ACL de una cuenta local.
En la tabla siguiente se muestran las ACL establecidas mediante el programa de instalación de SQL Server:
Cuenta de servicio para | Archivos y carpetas | Acceso |
---|---|---|
MSSQLServer | Instid\MSSQL\backup | Control total |
Instid\MSSQL\binn | Lectura, Ejecución | |
Instid\MSSQL\data | Control total | |
Instid\MSSQL\FTData | Control total | |
Instid\MSSQL\Install | Lectura, Ejecución | |
Instid\MSSQL\Log | Control total | |
Instid\MSSQL\Repldata | Control total | |
120\shared | Lectura, Ejecución | |
Instid\MSSQL\Template Data (solo SQL Server Express) | Lectura | |
SQLServerAgent1 | Instid\MSSQL\binn | Control total |
Instid\MSSQL\binn | Control total | |
Instid\MSSQL\Log | Lectura, Escritura, Eliminación, Ejecución | |
120\com | Lectura, Ejecución | |
120\shared | Lectura, Ejecución | |
120\shared\Errordumps | Lectura, escritura | |
ServerName\EventLog | Control total | |
FTS | Instid\MSSQL\FTData | Control total |
Instid\MSSQL\FTRef | Lectura, Ejecución | |
120\shared | Lectura, Ejecución | |
120\shared\Errordumps | Lectura, escritura | |
Instid\MSSQL\Install | Lectura, Ejecución | |
Instid\MSSQL\jobs | Lectura, escritura | |
MSSQLServerOLAPService | 120\shared\ASConfig | Control total |
Instid\OLAP | Lectura, Ejecución | |
Instid\Olap\Data | Control total | |
Instid\Olap\Log | Lectura, escritura | |
Instid\OLAP\Backup | Lectura, escritura | |
Instid\OLAP\Temp | Lectura, escritura | |
120\shared\Errordumps | Lectura, escritura | |
ReportServer | Instid\Reporting Services\Log Files | Lectura, Escritura, Eliminación |
Instid\Reporting Services\ReportServer | Lectura, Ejecución | |
Instid\Reporting Services\ReportServer\global.asax | Control total | |
Instid\Reporting Services\ReportServer\rsreportserver.config | Lectura | |
Instid\Reporting Services\reportManager | Lectura, Ejecución | |
Instid\Reporting Services\RSTempfiles | Lectura, Escritura, Ejecución, Eliminación | |
120\shared | Lectura, Ejecución | |
120\shared\Errordumps | Lectura, escritura | |
MSDTSServer100 | 120\dts\binn\MsDtsSrvr.ini.xml | Lectura |
120\dts\binn | Lectura, Ejecución | |
120\shared | Lectura, Ejecución | |
120\shared\Errordumps | Lectura, escritura | |
SQL Server Browser | 120\shared\ASConfig | Lectura |
120\shared | Lectura, Ejecución | |
120\shared\Errordumps | Lectura, escritura | |
SQLWriter | N/D (Se ejecuta como sistema local) | |
Usuario | Instid\MSSQL\binn | Lectura, Ejecución |
Instid\Reporting Services\ReportServer | Lectura, Ejecución, Mostrar el contenido de la carpeta | |
Instid\Reporting Services\ReportServer\global.asax | Lectura | |
Instid\Reporting Services\reportManager | Lectura, Ejecución | |
Instid\Reporting Services\ReportManager\pages | Lectura | |
Instid\Reporting Services\ReportManager\Styles | Lectura | |
120\dts | Lectura, Ejecución | |
120\tools | Lectura, Ejecución | |
100\tools | Lectura, Ejecución | |
90\tools | Lectura, Ejecución | |
80\tools | Lectura, Ejecución | |
120\sdk | Lectura | |
Microsoft SQL Server\120\Setup Bootstrap | Lectura, Ejecución | |
SQL Server Distributed Replay Controller | <Dir. herram.>\DReplayController\Log\ (directorio vacío) | Lectura, Ejecución, Mostrar el contenido de la carpeta |
<Dir. herram.>\DReplayController\DReplayController.exe | Lectura, Ejecución, Mostrar el contenido de la carpeta | |
<Dir. herram.>\DReplayController\resources|Lectura, Ejecución, Mostrar el contenido de la carpeta | ||
<Dir. herram.>\DReplayController\{todas las dll} | Lectura, Ejecución, Mostrar el contenido de la carpeta | |
<Dir. herram.>\DReplayController\DReplayController.config | Lectura, Ejecución, Mostrar el contenido de la carpeta | |
<Dir. herram.>\DReplayController\IRTemplate.tdf | Lectura, Ejecución, Mostrar el contenido de la carpeta | |
<Dir. herram.>\DReplayController\IRDefinition.xml | Lectura, Ejecución, Mostrar el contenido de la carpeta | |
SQL Server Distributed Replay Client | <Dir. herram.>\DReplayClient\Log|Lectura, Ejecución, Mostrar el contenido de la carpeta | |
<Dir. herram.>\DReplayClient\DReplayClient.exe | Lectura, Ejecución, Mostrar el contenido de la carpeta | |
<Dir. herram.>\DReplayClient\resources|Lectura, Ejecución, Mostrar el contenido de la carpeta | ||
<Dir. herram.>\DReplayClient\ (todas las dll) | Lectura, Ejecución, Mostrar el contenido de la carpeta | |
<Dir. herram.>\DReplayClient\DReplayClient.config | Lectura, Ejecución, Mostrar el contenido de la carpeta | |
<Dir. herram.>\DReplayClient\IRTemplate.tdf | Lectura, Ejecución, Mostrar el contenido de la carpeta | |
<Dir. herram.>\DReplayClient\IRDefinition.xml | Lectura, Ejecución, Mostrar el contenido de la carpeta |
1El servicio Agente SQL Server está deshabilitado en instancias de SQL Server Express y SQL Server Express con Advanced Services.
Cuando los archivos de base de datos se almacenan en una ubicación definida por el usuario, se debe conceder acceso a dicha ubicación al SID por servicio. Para obtener más información sobre la concesión de permisos del sistema de archivos a un SID por servicio, vea Configurar permisos del sistema de archivos para el acceso al motor de base de datos.
Permisos del sistema de archivos concedidos a otras cuentas de usuario o grupos de Windows
Es posible que sea necesario conceder algunos permisos de control de acceso a cuentas integradas u otras cuentas de servicio de SQL Server. La tabla siguiente muestra las ACL adicionales que son establecidas mediante el programa de instalación de SQL Server.
Componente que realiza la solicitud | Cuenta | Resource | Permisos |
---|---|---|---|
MSSQLServer | Usuarios del registro de rendimiento | Instid\MSSQL\binn | Mostrar el contenido de la carpeta |
Usuarios de Monitor de rendimiento | Instid\MSSQL\binn | Mostrar el contenido de la carpeta | |
Usuarios del registro de rendimiento, Usuarios del monitor de rendimiento | \WINNT\system32\sqlctr120.dll | Lectura, Ejecución | |
Solo el administrador | \\.\root\Microsoft\SqlServer\ServerEvents\<sql_instance_name>1 | Control total | |
Administradores, sistema | \tools\binn\schemas\sqlserver\2004\07\showplan | Control total | |
Usuarios | \tools\binn\schemas\sqlserver\2004\07\showplan | Lectura, Ejecución | |
Reporting Services | Cuenta de servicio Windows del servidor de informes | <instalación>\Reporting Services\LogFiles | Delete READ_CONTROL SYNCHRONIZE FILE_GENERIC_READ FILE_GENERIC_WRITE FILE_READ_DATA FILE_WRITE_DATA FILE_APPEND_DATA FILE_READ_EA FILE_WRITE_EA FILE_READ_ATTRIBUTES FILE_WRITE_ATTRIBUTES |
Cuenta de servicio de Windows del servidor de informes, todos los usuarios | <install>\Reporting Services\ReportManager, <install>\Reporting Services\ReportManager\Pages\*.*, <install>\Reporting Services\ReportManager\Styles\*.*, <install>\Reporting Services\ReportManager\webctrl_client\1_0\*.* | Lectura, Ejecución | |
Cuenta de servicio Windows del servidor de informes | <instalación>\Reporting Services\ReportServer | Lectura | |
Cuenta de servicio Windows del servidor de informes | <instalación>\Reporting Services\ReportServer\global.asax | Completo | |
Todos | <instalación>\Reporting Services\ReportServer\global.asax | READ_CONTROL FILE_READ_DATA FILE_READ_EA FILE_READ_ATTRIBUTES |
|
Cuenta de servicios de Windows del servidor de informes | <instalación>\Reporting Services\ReportServer\rsreportserver.config | Delete READ_CONTROL SYNCHRONIZE FILE_GENERIC_READ FILE_GENERIC_WRITE FILE_READ_DATA FILE_WRITE_DATA FILE_APPEND_DATA FILE_READ_EA FILE_WRITE_EA FILE_READ_ATTRIBUTES FILE_WRITE_ATTRIBUTES |
|
Todos | Claves del Servidor de informes (subárbol Instid) | Consultar valor Enumerar subclaves Notificar Controles de lectura |
|
Usuario de Terminal Services | Claves del Servidor de informes (subárbol Instid) | Consultar valor Establecer valor Crear subclave Enumerar subclave Notificar Eliminar Controles de lectura |
|
Usuarios avanzados | Claves del Servidor de informes (subárbol Instid) | Consultar valor Establecer valor Crear subclave Enumerar subclaves Notificar Eliminar Controles de lectura |
1Este es el espacio de nombres del proveedor WMI.
Permisos del sistema de archivos relacionados con las ubicaciones inusuales de los discos
La unidad predeterminada para las ubicaciones de instalación es systemdrive, normalmente la unidad C: al instalar bases de datos tempdb o de usuario
Unidad de disco no predeterminada
Cuando se instala una unidad local que no es la predeterminada, el SID por servicio debe tener acceso a la ubicación del archivo. El programa de instalación de SQL Server aprovisionará el acceso necesario.
Recurso compartido de red
Cuando las bases de datos se instalan en un recurso compartido de red, la cuenta de servicio debe tener acceso a la ubicación del archivo de las bases de datos de usuario y tempdb. El programa de instalación de SQL Server no puede aprovisionar el acceso a un recurso compartido de red. El usuario debe proporcionar acceso a una ubicación de tempdb para la cuenta de servicio antes de ejecutar el programa de instalación. El usuario debe proporcionar acceso a la ubicación de la base de datos de usuario antes de crear la base de datos.
Nota:
Las cuentas virtuales no se pueden autenticar en una ubicación remota. Todas las cuentas virtuales usan el permiso de la cuenta del equipo. Aprovisione la cuenta de equipo con el formato <nombre_de_dominio>\<nombre_de_equipo>$.
Revisar las consideraciones adicionales
En la tabla siguiente se muestran los permisos que necesitan los servicios de SQL Server para proporcionar una funcionalidad adicional.
Servicio/Aplicación | Funcionalidad | Permiso necesario |
---|---|---|
SQL Server (MSSQLSERVER) | Escribir en un buzón de correo mediante xp_sendmail. | Permisos de escritura de la red. |
SQL Server (MSSQLSERVER) | Ejecute xp_cmdshell para un usuario que no sea administrador de SQL Server. | Actuar como parte del sistema operativo y reemplazar un token de nivel de proceso. |
Agente SQL Server (MSSQLSERVER) | Usar la característica de reinicio automático. | Debe ser un miembro del grupo local Administradores. |
Database Engine Tuning Advisor | Optimiza las bases de datos para un rendimiento óptimo de las consultas. | Al utilizarla por primera vez, un usuario que tenga credenciales administrativas debe inicializar la aplicación. Después de la inicialización, los usuarios dbo pueden usar el Asistente para la optimización de motor de base de datos con el fin de optimizar solo aquellas tablas de las que son propietarios. Para obtener más información, vea el tema sobre cómo inicializar el Asistente para la optimización de motor de base de datos en los Libros en pantalla de SQL Server. |
Importante
Antes de actualizar SQL Server, habilite la autenticación de Windows para Agente SQL Server y compruebe la configuración predeterminada necesaria: que la cuenta de servicio de Agente SQL Server es miembro del grupo SQL Serversysadmin.
Permisos del Registro
El subárbol del Registro se crea en HKLM\Software\Microsoft\Microsoft SQL Server<id._de_instancia> para los componentes que dependen de la instancia. Por ejemplo
HKLM\Software\Microsoft\Microsoft SQL Server\MSSQL12. MyInstance
HKLM\Software\Microsoft\Microsoft SQL Server\MSASSQL12. MyInstance
HKLM\Software\Microsoft\Microsoft SQL Server\MSSQL.120
El Registro también mantiene una asignación de identificador de instancia a nombre de instancia. La asignación de identificador de instancia a nombre de instancia se mantiene de la siguiente forma:
[HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\Instance Names\SQL] "InstanceName"="MSSQL12"
[HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\Instance Names\OLAP] "InstanceName"="MSASSQL12"
[HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\Instance Names\RS] "InstanceName"="MSRSSQL12"
WMI
El Instrumental de administración de Windows (WMI) debe poder conectarse al Motor de base de datos. Para que esto sea posible, se aprovisiona el SID por servicio del proveedor de WMI de Windows (NT SERVICE\winmgmt) en el Motor de base de datos.
El proveedor WMI de SQL requiere los siguientes permisos:
Pertenencia a los roles fijos de base de datos db_ddladmin o db_owner en la base de datos msdb.
El permisoCREATE DDL EVENT NOTIFICATION en el servidor.
Permiso CREATE TRACE EVENT NOTIFICATION en el Motor de base de datos.
Permiso de nivel de servidorVIEW ANY DATABASE .
El programa de instalación de SQL Server crea un espacio de nombres WMI SQL y concede el permiso de lectura al SID por servicio del Agente SQL Server.
Canalizaciones con nombre
En toda la instalación, el programa de instalación de SQL Server proporciona acceso al Motor de base de datos de SQL Server a través del protocolo de memoria compartida, que es una canalización con nombre local.
Aprovisionamiento
En esta sección se describe el modo en que se aprovisionan las cuentas dentro de los distintos componentes de SQL Server.
Aprovisionamiento del motor de base de datos
Las cuentas siguientes se agregan como inicios de sesión en el Motor de base de datos de SQL Server.
Entidades de seguridad de Windows
Durante la instalación, el programa de instalación de SQL Server requiere al menos que una cuenta de usuario se denomine como un miembro del rol fijo de servidor sysadmin.
Cuenta sa
La cuenta sa está siempre presente como inicio de sesión del Motor de base de datos y es miembro del rol fijo de servidor sysadmin. Cuando el Motor de base de datos se instala con solo autenticación de Windows (es decir, cuando la autenticación de SQL Server no está habilitada), el inicio de sesión sa sigue presente, pero está deshabilitado. Para obtener información sobre cómo habilitar la cuenta sa , vea Cambiar el modo de autenticación del servidor.
Privilegios e inicio de sesión de SID por servicio de SQL Server
El SID por servicio del servicio SQL Server se aprovisiona como un inicio de sesión de Motor de base de datos. El inicio de sesión del SID por servicio es un miembro del rol fijo de servidor sysadmin .
Privilegios e inicio de sesión del Agente SQL Server
El SID por servicio del servicio Agente SQL Server se aprovisiona como inicio de sesión del Motor de base de datos. El inicio de sesión del SID por servicio es un miembro del rol fijo de servidor sysadmin .
Grupos de disponibilidad Always On e instancias y privilegios de los clústeres de conmutación por error de SQL
Al instalar el Motor de base de datos como grupos de disponibilidad AlwaysOn o instancia de clúster de conmutación por error de SQL (FCI de SQL), el sistema LOCAL se aprovisiona en el Motor de base de datos. Al inicio de sesión del SISTEMA LOCAL se le concede el permiso ALTER ANY AVAILABILITY GROUP (para grupos de disponibilidad AlwaysOn) y el permiso VIEW SERVER STATE (para FCI de SQL).
Objeto de escritura SQL y privilegios
El SID por servicio del servicio SQL Server VSS Writer se aprovisiona como inicio de sesión del Motor de base de datos. El inicio de sesión del SID por servicio es un miembro del rol fijo de servidor sysadmin .
WMI y privilegios de SQL
El programa de instalación de SQL Server aprovisiona la cuenta NT SERVICE\Winmgmt como inicio de sesión de Motor de base de datos y la agrega al rol fijo de servidor sysadmin.
Aprovisionamiento de SSRS
La cuenta especificada durante la instalación se aprovisiona como miembro del rol de base de datos RSExecRole . Para obtener más información, vea Configurar la cuenta de servicio del servidor de informes (Administrador de configuración del servidor de informes).
Aprovisionamiento de SSAS
Los requisitos de la cuenta de servicio de SSAS varían en función de cómo se implementa el servidor. Si va a instalar PowerPivot para SharePoint, el programa de instalación de SQL Server requiere que configure el servicio Analysis Services para que se ejecute en una cuenta de dominio. Las cuentas de dominio son necesarias para admitir la facilidad administrada de la cuenta que está integrada en SharePoint. Por este motivo, el programa de instalación de SQL Server no proporciona una cuenta de servicio predeterminada, como una cuenta virtual, para una instalación de PowerPivot para SharePoint. Para más información sobre el aprovisionamiento de PowerPivot para SharePoint, vea Configurar las cuentas de servicio PowerPivot.
Para todas las demás instalaciones independientes de SSAS, puede aprovisionar el servicio para ejecutarse en una cuenta de dominio, una cuenta del sistema integrada, una cuenta administrada o una cuenta virtual. Para obtener más información sobre el aprovisionamiento de cuentas, vea Configurar las cuentas de servicio (Analysis Services).
Para instalaciones en clúster, debe especificar una cuenta de dominio o una cuenta del sistema integrada. En los clústeres de conmutación por error de SSAS, no se admiten ni cuentas administradas ni cuentas virtuales.
Todas las instalaciones de SSAS requieren que especifique un administrador del sistema de la instancia de Analysis Services. Los privilegios de administrador se aprovisionan en el rol Servidor de Analysis Services.
Aprovisionamiento de SSRS
La cuenta especificada durante la instalación se aprovisiona en el Motor de base de datos como miembro del rol de base de datos RSExecRole. Para obtener más información, vea Configurar la cuenta de servicio del servidor de informes (Administrador de configuración del servidor de informes).
Actualización de versiones anteriores
En esta sección se describen los cambios realizados durante la actualización de una versión anterior de SQL Server.
SQL Server 2014 requiere Windows Server 2008 R2 SP1, Windows Server 2012, Windows 8.0, Windows Server 2012 R2 o Windows 8.1, . Cualquier versión anterior de SQL Server que se ejecuta en una versión de sistema operativo inferior debe tener el sistema operativo actualizado antes de actualizar SQL Server.
Durante la actualización de SQL Server 2005 a SQL Server 2014, el programa de instalación de SQL Server configurará SQL Server de la siguiente manera.
El Motor de base de datos se ejecuta con el contexto de seguridad del SID por servicio. Al SID por servicio se le concede acceso a las carpetas de archivos de la instancia de SQL Server (como DATA) y las claves del Registro de SQL Server.
El SID por servicio del Motor de base de datos se aprovisiona en el Motor de base de datos como miembro del rol fijo de servidor sysadmin.
Los SID por servicio se agregan a los grupos de Windows locales de SQL Server, a menos que SQL Server sea una instancia de clústeres de conmutación por error.
Los recursos de SQL Server siguen aprovisionados para los grupos de SQL Server Windows locales.
El nombre del grupo de Windows local de los servicios se cambia de SQLServer2005MSSQLUser$<nombre_de_equipo>$<nombre_de_instancia> a SQLServerMSSQLUser$<nombre_de_equipo>$<nombre_de_instancia>. Las ubicaciones de archivos de las bases de datos migradas tendrán entradas de control de acceso (ACE) para los grupos de Windows locales. Las ubicaciones de archivos para las nuevas bases de datos tendrán ACE para el SID por servicio.
Durante la actualización de SQL Server 2008, el programa de instalación de SQL Server conservará las ACE para el SID de SQL Server 2008 por servicio.
En el caso de una instancia de clúster de conmutación por error de SQL Server, se conservará la ACE de la cuenta de dominio configurada para el servicio.
Apéndice
Esta sección contiene información adicional sobre los servicios de SQL Server.
Descripción de las cuentas de servicio
La cuenta de servicio es la que se usa para iniciar un servicio de Windows, como el Motor de base de datos de SQL Server.
Cuentas disponibles con cualquier sistema operativo
Además de las nuevas cuentas MSA y las cuentas virtuales descritas anteriormente, pueden usarse las siguientes cuentas.
Si el servicio debe interactuar con servicios de red o acceder a recursos de un dominio como los recursos compartidos de archivos, o si utiliza conexiones con el servidor vinculadas a otros equipos que ejecutan SQL Server, podría utilizar una cuenta de servidor de dominio con privilegios mínimos. Muchas actividades de servidor a servidor solo se pueden realizar con una cuenta de usuario de dominio. El administrador del dominio del entorno debe haber creado esta cuenta previamente.
Nota:
Si configura la aplicación para utilizar una cuenta de dominio, puede aislar los privilegios de la aplicación, pero debe administrar manualmente contraseñas o crear una solución personalizada para administrar estas contraseñas. Muchas aplicaciones de servidor siguen esta estrategia para mejorar la seguridad, pero esta estrategia requiere administración y complejidad adicionales. En estas implementaciones, los administradores de servicio dedican un período de tiempo considerable a tareas de mantenimiento como administrar las contraseñas de servicio y nombres de entidades de seguridad de servicio (SPN), que son necesarios para la autenticación Kerberos. Además, estas tareas de mantenimiento pueden interrumpir el servicio.
Si el equipo no forma parte de un dominio, se recomienda usar una cuenta de usuario local sin permisos de administrador de Windows.
La cuenta de servicio local es una cuenta integrada que tiene el mismo nivel de acceso a los recursos y objetos que los miembros del grupo Usuarios. Este acceso limitado ayuda a proteger el sistema en caso de que los servicios o procesos individuales se vean comprometidos. Los servicios que se ejecutan en la cuenta de servicio local obtienen acceso a los recursos de la red como una sesión nula sin credenciales. Tenga en cuenta que la cuenta de servicio local no es compatible con los servicios de SQL Server o Agente SQL Server. El servicio local no se admite como la cuenta que ejecuta esos servicios porque es un servicio compartido y cualquier otro servicio que se ejecute en el servicio local tendría acceso de administrador del sistema a SQL Server. El nombre real de la cuenta es NT AUTHORITY\LOCAL SERVICE.
La cuenta de servicio de red es una cuenta integrada que tiene un mayor nivel de acceso a los recursos y a los objetos que los miembros del grupo Usuarios. Los servicios que se ejecutan como cuenta de servicio de red acceden a los recursos de red usando las credenciales de la cuenta de equipo con el formato <nombre_de_dominio>\<nombre_de_equipo>$. El nombre real de la cuenta es NT AUTHORITY\NETWORK SERVICE.
Sistema local es una cuenta integrada con un alto nivel de privilegios. Tiene amplios privilegios en el sistema local y actúa como el equipo en la red. El nombre real de la cuenta es NT AUTHORITY\SYSTEM.
Identificar los servicios que reconocen y que no reconocen instancias
Los servicios que reconocen instancias se asocian a una instancia específica de SQL Server y tienen su propio subárbol del Registro. Puede instalar varias copias de servicios que reconocen instancias ejecutando el programa de instalación de SQL Server para instalar cada componente o servicio. Los servicios que no reconocen instancias se comparten entre todas las instancias de SQL Server instaladas. No se asocian a una instancia concreta, se instalan solamente una vez y no se pueden instalar en paralelo.
Entre los servicios que reconocen instancias en SQL Server se incluyen los siguientes:
SQL Server
Agente SQL Server
Tenga en cuenta que el servicio Agente SQL Server está deshabilitado en instancias de SQL Server Express y SQL Server Express con Advanced Services.
Analysis Services 1
Reporting Services
Búsqueda de texto completo
Entre los servicios que no reconocen instancias en SQL Server se incluyen los siguientes:
Integration Services
SQL Server Browser
Objeto de escritura de SQL
1Analysis Services en modo integrado de SharePoint se ejecuta como "PowerPivot" como una sola instancia con nombre. El nombre de instancia es fijo. No puede especificar un nombre diferente. Solamente puede instalar una instancia de Analysis Services que se ejecute como 'PowerPivot' en cada servidor físico.
Nombres de servicio traducidos
En la tabla siguiente, se muestran los nombres de servicio que se ven en las versiones traducidas de Windows.
Idioma | Nombre de Servicio local | Nombre de Servicio de red | Nombre del sistema local | Nombre del grupo de administradores |
---|---|---|---|---|
Inglés Chino simplificado Chino tradicional Coreano Japonés |
NT AUTHORITY\LOCAL SERVICE | NT AUTHORITY\NETWORK SERVICE | NT AUTHORITY\SYSTEM | BUILTIN\Administradores |
Alemán | NT-AUTORITÄT\LOKALER DIENST | NT-AUTORITÄT\NETZWERKDIENST | NT-AUTORITÄT\SYSTEM | VORDEFINIERT\Administratoren |
Francés | AUTORITE NT\SERVICE LOCAL | AUTORITE NT\SERVICE RÉSEAU | AUTORITE NT\SYSTEM | BUILTIN\Administradores |
Italiano | NT AUTHORITY\SERVIZIO LOCALE | NT AUTHORITY\SERVIZIO DI RETE | NT AUTHORITY\SYSTEM | BUILTIN\Administradores |
Español | NT AUTHORITY\SERVICIO LOC | NT AUTHORITY\SERVICIO DE RED | NT AUTHORITY\SYSTEM | BUILTIN\Administradores |
Ruso | NT AUTHORITY\LOCAL SERVICE | NT AUTHORITY\NETWORK SERVICE | NT AUTHORITY\SYSTEM | BUILTIN\Администраторы |
Contenido relacionado
Consideraciones de seguridad para una instalación de SQL Server
Ubicaciones de archivos para las instancias predeterminadas y con nombre de SQL Server