Crear el RSExecRole

Reporting Services utiliza un rol de base de datos predefinido denominado RSExecRole para conceder permisos de servidor de informes a la base de datos del servidor de informes. El rol RSExecRole se crea automáticamente con la base de datos del servidor de informes. Por norma, nunca debería modificarlo ni asignar otros usuarios a dicho rol. Sin embargo, cuando se mueve una base de datos del servidor de informes a un Motor de base de datos de SQL Server nuevo o diferente, se debe volver a crear el rol en las bases de datos del sistema Master y MSDB.

Usando estas instrucciones realizará los siguientes pasos:

  • Crear y aprovisionar el rol RSExecRole en la base de datos del sistema Master.

  • Crear y aprovisionar el rol RSExecRole en la base de datos del sistema MSDB.

[!NOTA]

Las instrucciones de este tema están destinadas a los usuarios que no desean ejecutar un script o escribir código WMI para proporcionar la base de datos del servidor de informes. Si administra una implementación grande y va a mover las bases de datos habitualmente, debe escribir un script para automatizar estos pasos. Para obtener más información, vea Obtener acceso al proveedor WMI de Reporting Services.

Antes de empezar

  • Realice una copia de seguridad de las claves de cifrado para poder restaurarlas después de mover la base de datos. Este paso no afecta directamente a la capacidad personal para crear y proporcionar el rol RSExecRole, pero se debe disponer de una copia de seguridad de las claves para comprobar el trabajo. Para obtener más información, vea Hacer copia de seguridad y restaurar claves de cifrado de Reporting Services (modo nativo de SSRS).

  • Compruebe que ha iniciado sesión con una cuenta de usuario que tenga permisos sysadmin en la instancia de SQL Server.

  • Compruebe que el servicio Agente SQL Server está instalado y se está ejecutando en la instancia de Motor de base de datos que piensa utilizar.

  • Adjunte las bases de datos reportservertempdb y reportserver. No es necesario que adjunte las bases de datos para crear el rol real, pero deben estar adjuntas para poder probar el trabajo.

Las instrucciones para crear manualmente el rol RSExecRole están destinadas a utilizarse en el contexto de migración de una instalación del servidor de informes. Las tareas importantes como realizar una copia de seguridad y mover la base de datos del servidor de informes no se tratan en este tema, pero se incluyen en la documentación del motor de base de datos.

Crear RSExecRole en la base de datos maestra

Reporting Services utiliza procedimientos almacenados extendidos para que el servicio Agente SQL Server admita las operaciones programadas. En los pasos siguientes se explica cómo conceder permisos de ejecución para los procedimientos al rol RSExecRole.

Para crear el rol RSExecRole en la base de datos del sistema maestra mediante Management Studio

  1. Inicie SQL Server Management Studio y conéctese a una instancia de Motor de base de datos que hospede la base de datos del servidor de informes.

  2. Abra Bases de datos.

  3. Abra Bases de datos del sistema.

  4. Abra Maestra.

  5. Abra Seguridad.

  6. Abra Roles.

  7. Haga clic con el botón secundario en Roles de base de datos y seleccione Nuevo rol de la base de datos. Aparece la página General.

  8. En Nombre de rol, escriba RSExecRole.

  9. En Propietario, escriba DBO.

  10. Haga clic en Elementos protegibles.

  11. Haga clic en Buscar. Aparece el cuadro de diálogo Agregar objetos. La opción Especificar objetos está seleccionada de forma predeterminada.

  12. Haga clic en Aceptar. Aparece el cuadro de diálogo Seleccionar objetos.

  13. Haga clic en Tipos de objeto.

  14. Haga clic en Procedimientos almacenados extendidos.

  15. Haga clic en Aceptar.

  16. Haga clic en Examinar.

  17. Desplácese hacia abajo en la lista de procedimientos almacenados extendidos y seleccione los siguientes:

    1. xp_sqlagent_enum_jobs

    2. xp_sqlagent_is_starting

    3. xp_sqlagent_notify

  18. Haga clic en Aceptar y, a continuación, vuelva a hacer clic en Aceptar.

  19. En la fila Ejecutar, en la columna Conceder, haga clic en la casilla y, a continuación, haga clic en Aceptar.

  20. Repita este paso con cada uno de los procedimientos almacenados restantes. RSExecRole debe tener concedidos permisos de ejecución para los tres procedimientos almacenados.

Página Propiedades del rol de la base de datos

Crear el rol RSExecRole en la base de datos MSDB

Reporting Services utiliza procedimientos almacenados para el servicio Agente SQL Server y recupera información de los trabajos en las tablas del sistema para admitir las operaciones programadas. En los pasos siguientes se explica cómo conceder al rol RSExecRole permisos de ejecución para los procedimientos y permisos de selección en las tablas.

Para crear el rol RSExecRole en la base de datos del sistema MSDB

  1. Repita los pasos similares para conceder permisos a procedimientos almacenados y tablas en MSDB. Para simplificar los pasos, proporcionará los procedimientos almacenados y las tablas de forma independiente.

  2. Abra MSDB.

  3. Abra Seguridad.

  4. Abra Roles.

  5. Haga clic con el botón secundario en Roles de base de datos y seleccione Nuevo rol de la base de datos. Aparece la página General.

  6. En Nombre de rol, escriba RSExecRole.

  7. En Propietario, escriba DBO.

  8. Haga clic en Elementos protegibles.

  9. Haga clic en Agregar. Aparece el cuadro de diálogo Agregar objetos. La opción Especificar objetos está seleccionada de forma predeterminada.

  10. Haga clic en Aceptar.

  11. Haga clic en Tipos de objeto.

  12. Haga clic en Procedimientos almacenados.

  13. Haga clic en Aceptar.

  14. Haga clic en Examinar.

  15. Desplácese hacia abajo en la lista de elementos y seleccione los siguientes:

    1. sp_add_category

    2. sp_add_job

    3. sp_add_jobschedule

    4. sp_add_jobserver

    5. sp_add_jobstep

    6. sp_delete_job

    7. sp_help_category

    8. sp_help_job

    9. sp_help_jobschedule

    10. sp_verify_job_identifiers

  16. Haga clic en Aceptar y, a continuación, vuelva a hacer clic en Aceptar.

  17. Seleccione el primer procedimiento almacenado: sp_add_category.

  18. En la fila Ejecutar, en la columna Conceder, haga clic en la casilla y, a continuación, haga clic en Aceptar.

  19. Repita este paso con cada uno de los procedimientos almacenados restantes. Se deben conceder al rol RSExecRole permisos de ejecución para los diez procedimientos almacenados.

  20. En la pestaña Elementos protegibles, haga clic en Agregar de nuevo. Aparece el cuadro de diálogo Agregar objetos. La opción Especificar objetos está seleccionada de forma predeterminada.

  21. Haga clic en Aceptar.

  22. Haga clic en Tipos de objeto.

  23. Haga clic en Tablas.

  24. Haga clic en Aceptar.

  25. Haga clic en Examinar.

  26. Desplácese hacia abajo en la lista de elementos y seleccione los siguientes:

    1. syscategories

    2. sysjobs

  27. Haga clic en Aceptar y, a continuación, vuelva a hacer clic en Aceptar.

  28. Seleccione la primera tabla: syscategories.

  29. En la fila Seleccionar, en la columna Conceder, haga clic en la casilla y, a continuación, haga clic en Aceptar.

  30. Repita este procedimiento con la tabla sysjobs. Se deben conceder al rol RSExecRole permisos de selección para ambas tablas.

Mover la base de datos del servidor de informes

Después de crear los roles, puede mover la base de datos del servidor de informes a una instancia nueva de SQL Server. Para obtener más información, vea Mover las bases de datos del servidor de informes a otro equipo.

Si va a actualizar Motor de base de datos a SQL Server 2012, puede hacerlo antes o después de mover la base de datos.

La base de datos del servidor de informes se actualizará a SQL Server 2012 automáticamente cuando el servidor de informes se conecte a ella. No hay ningún paso concreto requerido para actualizar la base de datos.

Restaurar las claves de cifrado y comprobar el trabajo

Si ha adjuntado las bases de datos del servidor de informes, ahora debe poder completar los pasos siguientes para comprobar el trabajo.

Para comprobar la capacidad de operación del servidor de informes después de mover una base de datos

  1. Inicie la herramienta Configuración de Reporting Services y conéctese al servidor de informes.

  2. Haga clic en Base de datos.

  3. Haga clic en Cambiar base de datos.

  4. Haga clic en Elegir una base de datos del servidor de informes existente.

  5. Escriba el nombre del servidor del motor de base de datos. Si ha adjuntado las bases de datos del servidor de informes a una instancia con nombre, debe escribir el nombre de la instancia con este formato: <nombreDeServidor>\<nombreDeInstancia>.

  6. Haga clic en Probar conexión.

  7. Haga clic en Siguiente.

  8. En Base de datos, seleccione la base de datos del servidor de informes.

  9. Haga clic en Siguiente y complete el asistente.

  10. Haga clic en Claves de cifrado.

  11. Haga clic en Restaurar.

  12. Seleccione el archivo seguro (.snk) que tiene la copia de seguridad de la clave simétrica utilizada para descifrar las credenciales almacenadas y la información de conexión en la base de datos del servidor de informes.

  13. Escriba la contraseña y haga clic en Aceptar.

  14. Haga clic en Dirección URL del Administrador de informes.

  15. Haga clic en el vínculo para abrir el Administrador de informes. Debe ver los elementos del servidor de informes de la base de datos del servidor de informes.

Vea también

Tasks

Crear una base de datos del servidor de informes de modo nativo (Reporting Services)

Conceptos

Mover las bases de datos del servidor de informes a otro equipo

Hacer copia de seguridad y restaurar claves de cifrado de Reporting Services (modo nativo de SSRS)

Otros recursos

How to: Start Reporting Services Configuration Manager