Protección ampliada para la autenticación con Reporting Services

La protección ampliada es un conjunto de mejoras de las versiones recientes del sistema operativo Microsoft Windows. La protección ampliada mejora cómo protegen las aplicaciones las credenciales y la autenticación. La propia característica no proporciona directamente protección contra ataques específicos como el reenvío de credenciales, sino que proporciona una infraestructura para aplicaciones, como Reporting Services, con el fin de aplicar la protección ampliada para la autenticación.

Las principales mejoras de autenticación que forman parte de la protección ampliada son los enlaces de servicio y de canal. El enlace de canal usa un token de enlace de canal (CBT) para comprobar que no se ha puesto en peligro el canal establecido entre dos extremos. El enlace de servicio usa nombres principales de servicio (SPN) para validar el destino previsto de los tokens de autenticación. Para obtener información general sobre la protección ampliada, vea Autenticación de Windows integrada con protección ampliada.

SQL Server Reporting Services (SSRS) admite y aplica la protección ampliada que se ha habilitado en el sistema operativo y se ha configurado en Reporting Services. De forma predeterminada, Reporting Services acepta solicitudes que especifican la autenticación Negotiate o NTLM y, por tanto, pueden beneficiarse de la compatibilidad de la protección ampliada del sistema operativo y de las características de la protección ampliada de Reporting Services.

Importante

De forma predeterminada, Windows no habilita la protección ampliada. Para obtener información sobre cómo habilitar la protección ampliada de Windows, vea Protección ampliada para la autenticación. Tanto el sistema operativo como la pila de autenticación de cliente deben ser compatibles con la protección ampliada para la autenticación se realice correctamente. En sistemas operativos más antiguos, quizá deba instalar varias actualizaciones para disponer de un equipo totalmente preparado para la protección ampliada. Para obtener información sobre los desarrollos recientes con la protección ampliada, vea Actualizar información con protección ampliada.

Información general sobre la protección ampliada de Reporting Services

SSRS admite y aplica la protección ampliada que se ha habilitado en el sistema operativo. Si el sistema operativo no admite la protección ampliada o si no se ha habilitado la característica en él, se producirá un error de autenticación de la característica de protección ampliada de Reporting Services. La protección ampliada de Reporting Services también requiere un certificado TLS/SSL. Para más información, vea Configuración de conexiones TLS en un servidor de informes en modo nativo

Importante

De forma predeterminada, Reporting Services no habilita la protección ampliada. La característica se puede habilitar si se modifica el archivo de configuración rsreportserver.config o mediante las API de WMI para actualizar el archivo de configuración. SSRS no proporciona una interfaz de usuario para modificar o ver la configuración de protección ampliada. Para obtener más información, vea la sección de configuración de este tema.

Los problemas comunes que se producen a causa de los cambios de la configuración de la protección ampliada o de una configuración incorrecta no se muestran mediante mensajes ni ventanas de cuadro de diálogo de error obvios. Los problemas relacionados con la configuración y la compatibilidad de la protección ampliada dan como resultado errores de autenticación y errores en los registros de seguimiento de Reporting Services.

Importante

Algunas tecnologías de acceso a datos pueden no admitir la protección ampliada. Para conectar los orígenes de datos de SQL Server y la base de datos del catálogo de Reporting Services se usa una tecnología de acceso a datos. El hecho de que una tecnología de acceso a datos no admita la protección ampliada afecta a Reporting Services de las maneras siguientes:

  • La instancia de SQL Server que ejecuta la base de datos del catálogo de Reporting Services no puede tener habilitada la protección ampliada; de lo contrario, se producirá un error de conexión entre el servidor de informes y la base de datos del catálogo, y se devolverán errores de autenticación.
  • Las instancias de SQL Server que se usan como orígenes de datos de los informes de Reporting Services no pueden tener habilitada la protección ampliada; de lo contrario, los intentos de conexión del servidor de informes con el origen de datos del informe provocarán errores y devolverán errores de autenticación.

La documentación de una tecnología de acceso a datos debe tener información sobre la compatibilidad con la protección ampliada.

Actualizar

  • La actualización de un servidor de Reporting Services a SQL Server 2016 agrega opciones de configuración con valores predeterminados al archivo rsreportserver.config. Si la configuración ya se ha realizado, la instalación de SQL Server 2016 la conservará en el archivo rsreportserver.config.

  • Cuando se agregan parámetros de configuración al archivo de configuración rsreportserver.config, el comportamiento predeterminado es desactivar la característica de protección ampliada de Reporting Services y el usuario debe habilitarla de la forma descrita en este artículo. Para obtener más información, vea la sección de configuración de este artículo.

  • El valor predeterminado del parámetro RSWindowsExtendedProtectionLevel es Off.

  • El valor predeterminado del parámetro RSWindowsExtendedProtectionScenario es Proxy.

  • El Asesor de actualizaciones no comprueba si el sistema operativo o la instalación actual de Reporting Services tienen habilitada la compatibilidad con la protección ampliada.

Lo que no cubre la protección ampliada de Reporting Services

La característica de protección ampliada de Reporting Services no es compatible con las siguientes áreas y escenarios de características:

  • Los autores de las extensiones de seguridad personalizada de Reporting Services deben agregar compatibilidad para la protección ampliada a su extensión de seguridad personalizada.

  • Los componentes de terceros agregados o usados en la instalación de Reporting Services se deben actualizar por dichos proveedores para que admitan la protección ampliada. Para obtener más información, póngase en contacto con el otro proveedor.

Escenarios y recomendaciones para la implementación

En los siguientes escenarios se ilustran las distintas implementaciones y topologías, así como la configuración recomendada para protegerlas con la protección ampliada de Reporting Services.

Directo

Este escenario describe la conexión directa con un servidor de informes, por ejemplo, el entorno de una intranet.

Escenario Diagrama del escenario Protección
Comunicación de TLS directa.

El servidor de informes aplicará el cliente en el enlace de canal del servidor de informes.
Diagram that shows direct TLS communication.

1) Aplicación cliente

2) Servidor de informes
Establezca RSWindowsExtendedProtectionLevel en Allow o Require.

Establezca RSWindowsExtendedProtectionScenario en Direct.



-El enlace de servicio no es necesario, porque el enlace de canal usará el canal TLS.
Comunicación HTTP directa. El servidor de informes aplicará el Cliente en el enlace de servicio del servidor de informes. Diagram that shows HTTP communication.

1) Aplicación cliente

2) Servidor de informes
Establezca RSWindowsExtendedProtectionLevel en Allow o Require.

Establezca RSWindowsExtendedProtectionScenario en Any.



-No existe ningún canal TLS y, por tanto, no es posible la aplicación del enlace de canal.

-El enlace de servicio se puede validar. Sin embargo, no es una defensa completa sin el enlace de canal y el enlace de servicio por sí mismo solo protegerá contra amenazas básicas.

Equilibrio de carga del proxy y de la red

Las aplicaciones cliente se conectan a un dispositivo o software que realiza TLS y pasa por las credenciales al servidor para la autenticación, por ejemplo, una extranet, Internet o una intranet segura. El cliente se conecta a un proxy o todos los clientes usan un proxy.

Ocurre lo mismo cuando usa un dispositivo de equilibrio de carga de red (NLB).

Escenario Diagrama del escenario Protección
Comunicación HTTP. El servidor de informes aplicará el cliente en el enlace de servicio del servidor de informes. Diagram that shows indirect HTTP communication.

1) Aplicación cliente

2) Servidor de informes

3) Proxy
Establezca RSWindowsExtendedProtectionLevel en Allow o Require.

Establezca RSWindowsExtendedProtectionScenario en Any.



-No existe ningún canal TLS y, por tanto, no es posible la aplicación del enlace de canal.

-El servidor de informes se debe configurar para saber el nombre del servidor proxy con el fin de asegurarse de que se aplica el enlace de servicio correctamente.
Comunicación HTTP.

El servidor de informes aplicará el cliente en el enlace de Canal de proxy y en el enlace de servicio del servidor de informes.
Diagram that shows indirect SSL communication.

1) Aplicación cliente

2) Servidor de informes

3) Proxy
Establezca
RSWindowsExtendedProtectionLevel a Allow o Require.

Establezca RSWindowsExtendedProtectionScenario en Proxy.



-El canal TLS al proxy está disponible. Por tanto, se puede aplicar el enlace de canal en el proxy.

-También se puede aplicar el enlace de servicio.

-El servidor de informes debe saber el nombre del proxy y el administrador del servidor de informes debe crear una reserva de direcciones URL para este, con un encabezado de host o configurar el nombre de proxy en la entrada del Registro de Windows BackConnectionHostNames.
Comunicación HTTPS indirecta con un proxy seguro. El servidor de informes aplicará el cliente en el enlace de canal de proxy y en el enlace de servicio del servidor de informes. Diagram that shows indirect HTTPS communication with a secure proxy.

1) Aplicación cliente

2) Servidor de informes

3) Proxy
Establezca
RSWindowsExtendedProtectionLevel a Allow o Require.

Establezca RSWindowsExtendedProtectionScenario en Proxy.



-El canal TLS al proxy está disponible. Por tanto, se puede aplicar el enlace de canal en el proxy.

-También se puede aplicar el enlace de servicio.

-El servidor de informes debe saber el nombre del proxy y el administrador del servidor de informes debe crear una reserva de direcciones URL para este, con un encabezado de host o configurar el nombre de proxy en la entrada del Registro de Windows BackConnectionHostNames.

Puerta de enlace

En este escenario se describen las aplicaciones cliente que se conectan a un dispositivo o software que realiza TLS y autentica al usuario. Después, el dispositivo o software suplanta el contexto del usuario o un contexto de usuario distinto antes de efectuar una solicitud al servidor de informes.

Escenario Diagrama del escenario Protección
Comunicación HTTP indirecta.

La puerta de enlace aplicará el cliente en un enlace de canal de puerta de enlace. Existe una puerta de enlace en el enlace de servicio del servidor de informes.
Diagram that shows indirect SSL communication.

1) Aplicación cliente

2) Servidor de informes

3) Dispositivo de puerta de enlace
Establezca RSWindowsExtendedProtectionLevel en Allow o Require.

Establezca RSWindowsExtendedProtectionScenario en Any.



-El enlace de canal desde el cliente al servidor de informes no es posible ya que la puerta de enlace suplanta un contexto y, por tanto, crea un nuevo token NTLM.

-No existe ningún TLS desde la puerta de enlace al servidor de informes, por tanto, no se puede aplicar ningún enlace de canal.

-Se puede aplicar el enlace de servicio.

-El dispositivo de puerta de enlace lo debe configurar el administrador para aplicar el enlace de canal.
Comunicación HTTPS indirecta con una puerta de enlace segura. La puerta de enlace aplicará el cliente en el enlace de canal de puerta de entrada y el servidor de informes aplicará la puerta de enlace en el enlace de canal del servidor de informes. Diagram that shows indirect HTTPS communication with a Secure Gateway.

1) Aplicación cliente

2) Servidor de informes

3) Dispositivo de puerta de enlace
Establezca RSWindowsExtendedProtectionLevel en Allow o Require.

Establezca RSWindowsExtendedProtectionScenario en Direct.



-El enlace de canal desde el cliente al servidor de informes no es posible ya que la puerta de enlace suplanta un contexto y, por tanto, crea un nuevo token NTLM.

-TLS desde la puerta de enlace al servidor de informes, es decir, se puede aplicar enlace de canal.

-No se requiere enlace de servicio.

-El dispositivo de puerta de enlace lo debe configurar el administrador para aplicar el enlace de canal.

Combinación

En este escenario se describen los entornos de Extranet o Internet en los que el cliente conecta un proxy en combinación con un entorno de intranet donde un cliente se conecta al servidor de informes.

Escenario Diagrama del escenario Protección
Acceso indirecto y directo desde el cliente al servicio del servidor de informes sin TLS en conexiones del cliente al proxy ni del cliente al servidor de informes. 1) Aplicación cliente

2) Servidor de informes

3) Proxy

4) Aplicación cliente
Establezca RSWindowsExtendedProtectionLevel en Allow o Require.

Establezca RSWindowsExtendedProtectionScenario en Any.



-Se puede aplicar el enlace de servicio desde el cliente al servidor de informes.

-El servidor de informes debe saber el nombre del proxy y el administrador del servidor de informes debe crear una reserva de direcciones URL para este, con un encabezado de host o configurar el nombre de proxy en la entrada del Registro de Windows BackConnectionHostNames.
Acceso indirecto y directo desde el cliente al servidor de informes donde el cliente establece una conexión TLS al proxy o al servidor de informes. Diagram that shows indirect and direct access from client to report server.

1) Aplicación cliente

2) Servidor de informes

3) Proxy

4) Aplicación cliente
Establezca RSWindowsExtendedProtectionLevel en Allow o Require.

Establezca RSWindowsExtendedProtectionScenario en Proxy.



-Se puede usar el enlace de canal

-El servidor de informes debe saber el nombre del proxy y el administrador del servidor de informes debe crear una reserva de direcciones URL para el proxy, con un encabezado de host o configurar el nombre de proxy en la entrada del Registro de Windows BackConnectionHostNames.

Configurar la protección ampliada de Reporting Services

El archivo rsreportserver.config contiene los valores de configuración que controlan el comportamiento de la protección ampliada de Reporting Services.

Para más información sobre el uso y la edición del archivo rsreportserver.config, vea El archivo de configuración RSReportServer.config. La configuración de la protección ampliada también se puede cambiar e inspeccionar mediante las API WMI. Para más información, vea Método SetExtendedProtectionSettings (WMI MSReportServer_ConfigurationSetting).

Cuando se produce un error de autenticación de la configuración, se deshabilitan los tipos de autenticación RSWindowsNTLM, RSWindowsKerberos y RSWindowsNegotiate en el servidor de informes.

Configuración de la protección ampliada de los servicios de informes

La tabla siguiente proporciona información sobre los valores de configuración que aparecen en rsreportserver.config para la protección ampliada.

Configuración Descripción
RSWindowsExtendedProtectionLevel Especifica el grado de aplicación de la protección ampliada. Los valores válidos son:

Off: valor predeterminado. Especifica que no existe comprobación de enlace de canal ni de enlace de servicio

El valor Allow admite la protección ampliada, pero no la necesita. Especifica lo siguiente:

-La protección ampliada se aplicará en las aplicaciones cliente que se ejecuten en sistemas operativos que la admitan. La forma de aplicar la protección la determina la opción RsWindowsExtendedProtectionScenario

-Se permitirá la autenticación en aplicaciones que se ejecuten en sistemas operativos que no sean compatibles con la protección ampliada.

Require especifica:

-La protección ampliada se aplicará en las aplicaciones cliente que se ejecuten en sistemas operativos que la admitan.

-No se permitirá la autenticación en aplicaciones que se ejecuten en sistemas operativos que no sean compatibles con la protección ampliada.
RsWindowsExtendedProtectionScenario Especifica qué formas de protección ampliada se validan: Enlace de canales, enlace de servicios o ambos. Los valores válidos son:

Proxy: valor predeterminado. Especifica lo siguiente:

-Si está presente, la autenticación de Windows NTLM, Kerberos y Negotiate cuando está presente un token de enlace de canal.

-Se aplica el enlace de servicio.

Any Especifica:

-No se necesitan la autenticación de Windows NTLM, Kerberos ni Negotiate, ni ningún enlace de canal.

-Se aplica el enlace de servicio.

Direct Especifica:

-La autenticación de Windows NTLM, Kerberos y Negotiate cuando están presentes un CBT y una conexión TLS al servicio actual, y el CBT para que la conexión TLS coincida con el CBT del token de NTLM, Kerberos o Negotiate.

-No se aplica el enlace de servicio.



Nota: La configuración RsWindowsExtendedProtectionScenario se omite si RsWindowsExtendedProtectionLevel se establece en OFF.

Entradas del ejemplo en el archivo de configuración rsreportserver.config :

<Authentication>  
         <RSWindowsExtendedProtectionLevel>Allow</RSWindowsExtendedProtectionLevel>  
         <RSWindowsExtendedProtectionScenario>Proxy</RSWindowsExtendedProtectionLevel>  
</Authentication>  

Enlace de servicio y SPN incluidos

El enlace de servicio usa nombres principales de servicio (SPN) para validar el destino previsto de los tokens de autenticación. Reporting Services usa la información de reserva de dirección URL para compilar una lista de los SPN que se consideran válidos. La información de reservas de direcciones URL para la validación tanto de SPN como de reservas de direcciones URL, los administraciones del sistema pueden administrarlos desde una sola ubicación.

La lista de SPN válidos se actualiza cuando se produce una de las siguientes acciones:

  • Se inicia el servidor de informes.
  • Se cambian las opciones de configuración para la protección ampliada.
  • El dominio de aplicación se recicla.

La lista válida de los SPN es específica de cada aplicación. Por ejemplo, el Administrador de informes y el servidor de informes tendrán cada uno una lista distinta de los SPN válidos calculados.

La lista de los SPN válidos calculados para una aplicación la determinan los siguientes factores:

  • Cada reserva de direcciones URL.

  • Cada SPN recuperado desde el controlador de dominios para la cuenta de servicio de los servicios de informes.

  • Si una reserva de direcciones URL incluye caracteres comodín ('*' o '+'), el servidor de informes agregará cada entrada desde la colección de hosts.

Orígenes de la colección de hosts.

En la tabla siguiente se citan los posible orígenes para la colección de hosts.

Tipo de origen de datos Descripción
ComputerNameDnsDomain El nombre del dominio DNS asignado al equipo local. Si el equipo local es un nodo de un clúster, se usa el nombre de dominio DNS del servidor virtual de clústeres.
ComputerNameDnsFullyQualified El nombre DNS completo que identifica exclusivamente el equipo local. Este nombre es una combinación del nombre del host DNS y el nombre del dominio DNS, con el formato nombreDeHost.nombreDeDominio. Si el equipo local es un nodo de un clúster, se usa el nombre DNS completo del servidor virtual de clústeres.
ComputerNameDnsHostname El nombre del host DNS del equipo local. Si el equipo local es un nodo de un clúster, se usa el nombre del host DNS del servidor virtual de clústeres.
ComputerNameNetBIOS El nombre NetBIOS del equipo local. Si el equipo local es un nodo de un clúster, se usa el nombre NetBIOS del servidor virtual de clústeres.
ComputerNamePhysicalDnsDomain El nombre del dominio DNS asignado al equipo local. Si el equipo local es un nodo de un clúster, se usa el nombre de dominio DNS del equipo local, no el nombre del servidor virtual de clústeres.
ComputerNamePhysicalDnsFullyQualified El nombre DNS completo que identifica exclusivamente el equipo. Si el equipo local es un nodo de un clúster, se usa el nombre DNS completo del equipo local, no el nombre del servidor virtual de clústeres.

El nombre DNS completo es una combinación del nombre del host DNS y del nombre del dominio DNS, con el formato nombreDeHost.nombreDeDominio.
ComputerNamePhysicalDnsHostname El nombre del host DNS del equipo local. Si el equipo local es un nodo de un clúster, se usa el nombre del host DNS del equipo local, no el nombre del servidor virtual de clústeres.
ComputerNamePhysicalNetBIOS El nombre NetBIOS del equipo local. Si el equipo local es un nodo de un clúster, este origen es el nombre NetBIOS del equipo local, no el nombre del servidor virtual de clústeres.

Para más información, vea Registro de un nombre de entidad de seguridad de servicio (SPN) para un servidor de informes y Acerca de las reservas y el registro de reservas de URL (Administrador de configuración del servidor de informes).

Conectar al motor de base de datos con protección ampliada
Introducción a la protección ampliada para la autenticación
Autenticación de Windows integrada con protección ampliada
Microsoft Security Advisory: Protección ampliada para la autenticación
Registro de seguimiento del servicio del servidor de informes
Archivo de configuración RSReportServer.config
Método SetExtendedProtectionSettings (WMI MSReportServer_ConfigurationSetting)

¿Tiene alguna pregunta más? Puede plantear sus dudas en el foro de Reporting Services.