Arquitectura de servicio (Reporting Services)

En Reporting Services, un servidor de informes se implementa como un servicio de Windows que está compuesto de diferentes áreas de característica que se ejecutan en dominios de aplicación independientes. El servicio hospeda el Administrador de informes, el servicio web del servidor de informes y áreas de características de procesamiento en segundo plano. En este tema se describe la composición del servicio para que pueda tomar decisiones meditadas sobre qué características habilitar y cómo solucionar los problema que surjan.

Diagrama de la arquitectura

El diagrama siguiente muestra la arquitectura del servicio en Reporting Services.

Diagrama de la arquitectura del servicio

Nota

No todas las capacidades del servidor de informes están reflejadas en el diagrama de la arquitectura. Por ejemplo, la inicialización y el cifrado reversible son operaciones del servidor esenciales que existen fuera del ámbito de las tres áreas de características ilustradas en el diagrama.

Servicio e infraestructura

El servicio Windows del Servidor de informes es un conjunto consolidado de aplicaciones que se ejecutan en un proceso único, bajo una cuenta única, con acceso a una única base de datos del servidor de informes y a un conjunto de archivos de configuración. La configuración de todo el servicio se almacena en RSeportServer.config, ReportServerServices.exe.config y en la base de datos del servidor de informes.

Dentro del servicio, el Administrador de informes, el servicio web y el procesamiento en segundo plano se ejecutan en dominios de aplicación independientes. Aunque las tres áreas de características están habilitadas de forma predeterminada, puede decidir qué partes del servicio están disponibles en cualquier momento. Por ejemplo, puede desactivar el servicio web si no desea admitir informes a petición o interactivos.

Aunque las áreas de características de servidor están aisladas en dominios de aplicación independientes, la memoria y el estado de procesos se administran para todo el servicio en conjunto. Los umbrales de memoria se configuran para el servicio en su totalidad. El servidor de informes administra las acciones de reciclaje como operaciones internas. No se puede reciclar partes individuales del servicio a petición. Sin embargo, se puede establecer una configuración que especifique cuánto tiempo se mantienen abiertas las conexiones persistentes.

Si segmenta las áreas de características de un servicio entre varias instancias (por ejemplo, habilita el Administrador de informes en una instancia, el servicio web en una segunda instancia, y el procesamiento en segundo plano en una tercera), las opciones de memoria y configuración se aplican a las aplicaciones que se ejecutan en esa instancia concreta. Tenga en cuenta que aunque segmente las áreas de características del servicio, existen ciertas interdependencias. Una instalación del servidor de informes completa utiliza las tres normalmente. Para obtener más información, vea Cómo activar o desactivar las características de Reporting Services.

Componente de escucha HTTP

Reporting Services incluye un componente de escucha HTTP que supervisa las peticiones entrantes dirigidas a HTTP.SYS en un puerto concreto del equipo local. El nombre de host y el puerto se especifican en una reserva de direcciones URL al configurar el servidor. En función del sistema operativo que esté utilizando, el puerto que especifique puede ser compartido con otras aplicaciones.

El componente de escucha HTTP implementa el protocolo HTTP 1.1. Utiliza las capacidades de HTTP.SYS integradas en el sistema operativo. Por esta razón, Reporting Services requiere sistemas operativos que incluyan HTTP.SYS como componente interno.

Cuando el componente de escucha HTTP procesa una solicitud, la reenvía al nivel de autenticación para comprobar la identidad del usuario. Una vez que se ha autenticado la solicitud, se llama al servicio web del servidor de informes.

El componente de escucha HTTP utiliza la versión 1.0 de la API del servidor HTTP. Para obtener más información, vea el tema sobre la API del servidor HTTP en MSDN.

Nivel de autenticación

Reporting Services contiene un nivel de autenticación que comprueba la identidad del usuario o aplicación que realiza la solicitud. Se admiten los tipos de autenticación siguientes: seguridad integrada de Windows, autenticación NTLM, autenticación básica, autenticación personalizada o de formularios, y acceso anónimo. Reporting Services utiliza de forma predeterminada la seguridad integrada de Windows y la autenticación NTLM, pero puede especificar una diferente en los archivos de configuración. Cada instancia del servidor de informes se puede configurar para un tipo de autenticación exactamente. Si tiene una configuración de implementación escalada, cada nodo en el entorno debe utilizar el mismo tipo de autenticación.

La autenticación del servidor de informes funciona dentro del contexto de la configuración de seguridad de la red y las aplicaciones cliente. El uso correcto de un tipo de autenticación determinado depende de las características de seguridad del explorador y la red. Por ejemplo, el uso de la seguridad integrada de Windows requiere que se utilice Internet Explorer, que se tenga la autenticación de red de Kerberos y la suplantación esté habilitada. Además, si desea utilizar la seguridad integrada para las conexiones al origen de datos del informe, también debe tener habilitada la delegación para permitir conexiones subsiguientes a orígenes de datos remotos.

Para obtener más información sobre la autenticación en Reporting Services, vea Configurar la autenticación en Reporting Services.

Administrador de informes

El Administrador de informes es un cliente de superficie cero que proporciona acceso de servidor web front-end al servicio web del servidor de informes. Es la herramienta que se comercializa para ver y administrar el contenido y las operaciones del servidor de informes.

De manera predeterminada, proporciona el acceso front-end al servicio web que se ejecuta en la misma instancia del servidor. Si el servicio web no está habilitado en la instancia del servidor, puede dirigir el Administrador de informes a un servicio web del servidor de informes en una instancia o equipo diferentes, estableciendo una dirección URL en los archivos de configuración.

El Administrador de informes se ejecuta dentro de una sesión del explorador en el equipo cliente. No hay archivos de aplicación ni ninguna configuración almacenados en el cliente. El estado de sesión se conserva mientras esté abierta la ventana del explorador. La configuración específica del usuario se guarda en la base de datos del servidor de informes y se vuelve a usar siempre que el usuario se conecta al Administrador de informes.

El Administrador de informes puede hospedar la configuración de extensiones de entrega personalizada en las páginas de definición de suscripciones. Si crea e implementa extensiones de entrega personalizadas, el Administrador de informes puede presentar opciones y texto de presentación para esa extensión dinámicamente.

Para utilizar el Administrador de informes, debe definir una dirección URL a la aplicación. Para deshabilitar el Administrador de informes, lo único que tiene que hacer es no crear la dirección URL. Si ha instalado Reporting Services en la configuración predeterminada, se crea la dirección URL, que debe eliminar si decide desactivar la aplicación.

Si configura el servidor de informes para que se ejecute en el modo integrado de SharePoint, el Administrador de informes está desactivado. No puede utilizar el Administrador de informes en un servidor de informes que se ejecuta en el modo integrado de SharePoint, incluso aunque haya configurado la dirección URL.

Para obtener más información sobre el Administrador de informes, vea Administrador de informes y Cómo configurar el Administrador de informes.

Servicio web del servidor de informes

El servicio web del servidor de informes es el motor básico para todas las solicitudes de procesamiento de informes y modelos a petición iniciadas por un usuario o aplicación en tiempo real, incluidas la mayoría de las solicitudes que se dirigen a y desde el Administrador de informes.

El servicio web del servidor de informes realiza un procesamiento completo para los informes que se ejecutan a petición. Para admitir el procesamiento interactivo, el servicio web autentica al usuario y comprueba las reglas de autorización antes de entregar una solicitud. El servicio web admite la extensión de seguridad de Windows predeterminada y extensiones de autenticación personalizadas.

El servicio web proporciona también la interfaz de programación principal para aplicaciones personalizadas que se integran con el servidor de informes. Si va a proporcionar una interfaz de usuario personalizada, puede utilizar el servicio web sin el Administrador de informes.

Para obtener más información, vea Servicio web del servidor de informes.

Procesamiento en segundo plano

El procesamiento en segundo plano hace referencia a las operaciones que se ejecutan en segundo plano y son iniciadas por el servidor de informes. La mayor parte del procesamiento en segundo plano consiste en procesamiento de informes programado y entrega de suscripciones, pero también incluye las tareas de mantenimiento de la base de datos del servidor de informes.

El procesamiento en segundo plano de la programación, suscripción y entrega se puede configurar y desactivarse a través de la faceta Configuración de área expuesta para Reporting Services de la administración basada en directivas de Management Studio. Si desactiva esas operaciones, el procesamiento programado de informes o modelos no estará disponible en la instancia del servicio actual. El mantenimiento de la base de datos es una tarea esencial que no se puede desactivar porque mantiene el servidor en un estado de funcionamiento.

Las operaciones de procesamiento en segundo plano dependen de una aplicación front-end o del servicio web para su definición. Concretamente, las programaciones y suscripciones se crean en las páginas de aplicación del Administrador de informes, o en un sitio de SharePoint si el servidor de informes se configura para la integración de SharePoint y, a continuación, se reenvían al servicio web, que crea y almacena las definiciones en la base de datos del servidor de informes.

Si proporciona código personalizado que requiere el acceso mediante programación al procesamiento de servidor, utilice el proveedor de WMI de Reporting Services. Para obtener más información, vea Proveedor WMI de Reporting Services. Para obtener más información sobre las características de programación y entrega, vea Procesador de entrega y programación.

Administración de la autenticación y la memoria para el procesamiento en segundo plano

Como se muestra en el diagrama de arquitectura de servicio, el procesamiento en segundo plano administra la autenticación y la memoria de manera distinta que el Administrador de informes y el servicio web. Los procesos en segundo plano utilizan Authz.dll para comprobar si la cuenta de usuario que se usó para crear la suscripción todavía tiene los permisos correctos para ver el informe. Esta comprobación asegura que el usuario que está a punto de recibir el informe es un usuario de Windows válido en el dominio. El resto del procesamiento de informes y modelos que se ejecuta como un proceso de segundo plano se solicita bajo la identidad de la cuenta de ejecución desatendida.