Cómo configurar la autenticación de formularios o personalizada en Reporting Services

Reporting Services proporciona una arquitectura extensible que permite conectar módulos de autenticación personalizados o basados en formularios. Podría considerar implementar una extensión de autenticación personalizada si los requisitos de implementación no incluyen la seguridad integrada de Windows o la autenticación básica. El escenario más común para utilizar la autenticación personalizada es admitir el acceso a una extranet o a Internet en una aplicación web. Reemplazar la extensión de autenticación de Windows predeterminada con una extensión de autenticación personalizada le proporciona más control sobre cómo se concede acceso a los usuarios externos al servidor de informes.

En la práctica, implementar una extensión de autenticación personalizada requiere varios pasos que incluyen copiar los archivos de aplicación y ensamblados, modificar los archivos de configuración y realizar pruebas. Este tema se centra simplemente en la configuración de autenticación que se especifica en los archivos de configuración.

Nota

La creación de una extensión de autenticación personalizada requiere código personalizado y conocimientos sobre la seguridad de ASP.NET. Si no desea crear una extensión de autenticación personalizada, puede utilizar grupos y cuentas de Microsoft Active Directory, pero tendrá que reducir en gran parte el ámbito de implementación de un servidor de informes. Para obtener más información sobre la autenticación personalizada, vea Implementar una extensión de seguridad.

Además, si desea utilizar una extensión de la autenticación personalizada o de la autenticación de formularios en un entorno de Reporting Services que esté integrado con un producto de SharePoint, debe configurar el sitio de SharePoint para utilizar el método de autenticación que elija. Para obtener más información sobre cómo configurar la autenticación en SharePoint, vea Ejemplos de autenticación en Microsoft Developer Network (MSDN).

Nota de advertenciaAdvertencia

Es responsabilidad del proveedor de formularios mitigar ataques de seguridad por fuerza bruta en los que un usuario malintencionado realice llamadas frecuentes y repetidas al extremo hasta que el servidor se vea afectado negativamente. Un enfoque común para mitigar este tipo de amenaza de seguridad es que el proveedor de formularios haya implementado características para bloquear cuentas después de producirse un número específico de intentos de inicio de sesión incorrectos. La seguridad integrada de Windows dispone de compatibilidad de bloqueo mediante la directiva de bloqueo del dominio. Esta directiva la debe configurar el administrador del dominio. No obstante, con la autenticación de formularios, es responsabilidad del proveedor de formularios proporcionar protección frente a amenazas potenciales.

Para configurar un servidor de informes de modo que use la autenticación personalizada

  1. Abra RSReportServer.config en un procesador de texto.

  2. Busque <Authentication>.

  3. Copie la estructura XML siguiente:

    <Authentication>
          <AuthenticationTypes>
                 <Custom />
          </AuthenticationTypes>
          <EnableAuthPersistence>true</EnableAuthPersistence>
    </Authentication>
    
  4. Péguela sobre las entradas existentes para <Authentication>.

    Observe que no puede utilizar Custom con otros tipos de autenticación.

  5. Guarde el archivo.

  6. Abra el archivo Web.config para el servidor de informes. De forma predeterminada, se encuentra en la carpeta \Archivos de programa\Microsoft SQL Server\MSRS10_50.MSSQLSERVER\Reporting Services\ReportServer.

  7. Busque authentication mode y establézcalo en Forms.

    <authentication mode = "Forms" />
    
  8. Busque identity impersonate y establézcalo en False.

    <identity impersonate = "false" />
    
  9. Abra el archivo Web.config del Administrador de informes. De forma predeterminada, se encuentra en la carpeta \Archivos de programa\Microsoft SQL Server\MSRS10_50.MSSQLSERVER\Reporting Services\ReportManager.

  10. Busque authentication mode y establézcalo en Forms.

    <authentication mode = "Forms" />
    
  11. Busque identity impersonate y establézcalo en False.

    <identity impersonate = "false" />
    
  12. Agregue la estructura del elemento PassThroughCookies al archivo de configuración. Para obtener más información, vea Habilitar el Administrador de informes para transmitir cookies de autenticación personalizada.

  13. Guarde el archivo.

  14. Si configuró una implementación escalada, repita todos los pasos anteriores con los demás servidores de informes de la implementación.

  15. Reinicie el servidor de informes para borrar las sesiones que estén abiertas en ese momento.