Conectar al motor de base de datos con protección ampliada

Se aplica a:SQL Server

SQL Server admite la protección ampliada a partir de SQL Server 2008 R2 (10.50.x). Laprotección ampliada para la autenticación es una característica de los componentes de red que implementa el sistema operativo. Laprotección ampliada se admite en Windows 7 y Windows Server 2008 R2. La protección ampliada se incluye en los Service Pack para sistemas operativos Microsoft más antiguos. SQL Server es más seguro cuando las conexiones se realizan con Extended Protection.

Importante

Windows no habilita la protección ampliada de forma predeterminada. Para obtener información acerca de cómo habilitar la protección ampliada en Windows, vea Protección ampliada para la autenticación.

Descripción de la protección ampliada

Laprotección ampliada usa el enlace de servicio y el enlace de canal para ayudar a evitar un ataque de retransmisión de autenticación. En un ataque de retransmisión de autenticación, un cliente que puede realizar la autenticación NTLM (por ejemplo, el Explorador de Windows, Microsoft Outlook, una aplicación .NET SqlClient, etc.) se conecta a un atacante (por ejemplo, un servidor de archivos CIFS malintencionado). El atacante usa las credenciales del cliente para hacerse pasar por este y autenticarse en un servicio (por ejemplo, una instancia del servicio de Motor de base de datos).

Hay dos variaciones de este ataque:

  • En un ataque por señuelo, el cliente es atraído para conectar voluntariamente con el atacante.

  • En un ataque de suplantación, el cliente pretende conectarse a un servicio válido, pero no es consciente de que DNS o el enrutamiento IP, o ambos, se han alterado para redirigir la conexión al atacante en su lugar.

SQL Server admite el enlace de servicio y el enlace de canal para ayudar a reducir estos ataques en sesiones de SQL Server.

enlace del servicio

El enlace de servicio soluciona los ataques por señuelo exigiendo que un cliente envíe un nombre principal de servicio (SPN) firmado del servicio de SQL Server al que el cliente pretende conectarse. Como parte de la respuesta de la autenticación, el servicio valida que el SPN recibido en el paquete coincida con su propio SPN. Si un cliente es atraído para conectarse a un atacante, el cliente incluirá el SPN firmado del atacante. El atacante no puede retransmitir el paquete para autenticar al servicio de SQL Server real como el cliente, porque incluiría el SPN del atacante. El enlace de servicio incurre en un costo insignificante una sola vez, pero no soluciona los ataques de suplantación. El enlace de servicio se produce cuando una aplicación cliente no usa el cifrado para conectarse a SQL Server.

enlace del canal

El enlace de canal establece un canal seguro (Schannel) entre un cliente y una instancia del servicio de SQL Server. El servicio comprueba la autenticidad del cliente comparando el token de enlace de canal (CBT) del cliente específico de ese canal, con su propio CBT. El enlace de canal trata tanto los ataques de suplantación como los de atracción. Sin embargo, incurre en un costo de tiempo de ejecución mayor, porque requiere cifrado de Seguridad de la capa de transporte (TLS) de todo el tráfico de la sesión. El enlace de canal se produce cuando una aplicación cliente usa el cifrado para conectarse a SQL Server, independientemente de si el cifrado lo fuerza el cliente o el servidor.

Advertencia

Los proveedores de datos SQL Server y Microsoft para SQL Server admiten TLS 1.0 y SSL 3.0. Si fuerza un protocolo diferente (como por ejemplo, TLS 1.1 o TLS 1.2) realizando cambios en la capa SChannel del sistema operativo, las conexiones a SQL Server podrían no funcionar como es debido. Asegúrese de que tiene la compilación más reciente de SQL Server para garantizar la compatibilidad con TLS 1.1 o TLS 1.2. Para obtener más información, vea https://support.microsoft.com/topic/kb3135244-tls-1-2-support-for-microsoft-sql-server-e4472ef8-90a9-13c1-e4d8-44aad198cdbe.

Sistemas operativos admitidos

Los siguientes vínculos proporcionan más información acerca del modo en que Windows admite la protección ampliada:

Configuración

Hay tres opciones de configuración de la conexión de SQL Server que afectan al enlace de servicio y al enlace de canal. Las opciones se pueden configurar utilizando el Administrador de configuración de SQL Server o WMI, y se pueden ver mediante la faceta Configuración del protocolo del servidor de la administración basada en directivas.

  • Forzar el cifrado

    Los valores posibles son Activado y Desactivado. Para usar el enlace de canal, Forzar cifrado debe estar establecido en Activadoy todos los clientes se verán obligados a realizar el cifrado. Si es Desactivado, solo se garantiza el enlace de servicio. Forzar cifrado está en Propiedades de Protocolos de MSSQLSERVER (pestaña Marcas) en el Administrador de configuración de SQL Server.

  • Protección ampliada

    Los valores posibles son Desactivado, Permitidoy Requerido. La variable Protección ampliada permite a los usuarios configurar el nivel de protección ampliada de cada instancia de SQL Server. Protección ampliada está en Propiedades de Protocolos de MSSQLSERVER (pestaña Avanzadas) en el Administrador de configuración de SQL Server.

    • Cuando se establece en Desactivado, Protección ampliada se deshabilita. La instancia de SQL Server aceptará las conexiones de cualquier cliente independientemente de que esté o no protegido. La configuraciónDesactivado es compatible con los sistemas operativos sin revisiones y anteriores, pero es menos segura. Utilice este valor cuando sepa que los sistemas operativos clientes no admiten la protección ampliada.

    • Cuando se establece en Permitido, la protección ampliada se requiere para las conexiones de los sistemas operativos que admiten la protección ampliada. Laprotección ampliada se omite para las conexiones de los sistemas operativos que no admiten la protección ampliada. Se rechazan las conexiones de las aplicaciones cliente no protegidas que se estén ejecutando en sistemas operativos clientes protegidos. Esta configuración es más segura que Desactivado, pero no es la más segura. Utilice esta configuración en entornos mixtos, donde no todos los sistemas operativos admitan protección ampliada .

    • Cuando se establece en Requerido, solo se aceptan las conexiones de las aplicaciones protegidas en sistemas operativos protegidos. Esta configuración es la más segura, pero los sistemas operativos o las aplicaciones que no admitan la protección ampliada no podrán conectarse a SQL Server.

  • Se aceptan SPN NTLM

    Cuando un servidor se conoce por más de un SPN, se necesita la variable Se aceptan SPN NTLM . Cuando un cliente intenta conectarse al servidor utilizando un SPN válido que el servidor no conoce, el enlace de servicio dará un error. Para evitar este problema, los usuarios pueden especificar varios SPN que representan al servidor utilizando Se aceptan SPN NTLM. Se aceptan SPN NTLM es una serie de SPN separados por punto y coma. Por ejemplo, para permitir los SPN MSSQLSvc/ nombreDeHost1.Contoso.com y MSSQLSvc/ nombreDeHost2.Contoso.com, escriba MSSQLSvc/nombreDeHost1 .Contoso.com; MSSQLSvc/nombreDeHost2.Contoso.com en el cuadro Se aceptan SPN NTLM . La variable tiene una longitud máxima de 2.048 caracteres. Se aceptan SPN NTLM está en Propiedades de Protocolos de MSSQLSERVER (pestaña Avanzadas) en el Administrador de configuración de SQL Server.

Habilitar la protección ampliada para el motor de base de datos

Para usar la protección ampliada, tanto el servidor como el cliente deben tener un sistema operativo en el que se admita la protección ampliaday la protección ampliada debe estar habilitada en el sistema operativo. Para obtener más información acerca de cómo habilitar la protección ampliada para el sistema operativo, vea Protección ampliada para la autenticación.

SQL Server admite la protección ampliada a partir de SQL Server 2008 R2 (10.50.x). La protección ampliada para algunas versiones anteriores de SQL Server estará disponible en actualizaciones futuras. Después de habilitar la protección ampliada en el equipo servidor, siga estos pasos para volver a habilitar la protección ampliadaen el motor de base de datos:

  1. En el menú Inicio , elija Todos los programas, elija Microsoft SQL Server y haga clic en Administrador de configuración de SQL Server.

  2. Expanda Configuración de red de SQL Server, haga clic con el botón derecho en Protocolos de _<_nombreDeInstancia*>* y, luego, haga clic en Propiedades.

  3. Para el enlace de canal y el enlace de servicio, en la pestaña Opciones avanzadas , establezca Protección ampliada en el valor adecuado.

  4. Si lo desea, cuando un servidor se conozca por más de un SPN, en la pestaña Opciones avanzadas , configure el campo Se aceptan SPN NTLM tal y como se describe en la sección "Configuración".

  5. Para el enlace de canal, en la pestaña Marcas , establezca Forzar cifrado en Activado.

  6. Reinicie el servicio de Motor de base de datos.

Configurar otros componentes de SQL Server

Para obtener más información sobre cómo configurar Reporting Services, vea Protección ampliada para la autenticación con Reporting Services.

Al utilizar IIS para tener acceso a los datos de Analysis Services utilizando una conexión HTTPS o HTTP, Analysis Services puede sacar provecho de la protección ampliada que proporciona IIS. Para obtener más información acerca de cómo configurar IIS para utilizar la protección ampliada, vea el tema que trata cómo configurar la protección ampliada en IIS 7.5.

Consulte también

Configuración de red del servidor
Configuración de red de cliente
Introducción a la protección ampliada para la autenticación
Autenticación de Windows integrada con protección ampliada