Compartir a través de


Crear el RSExecRole

Reporting Services usa un rol de base de datos predefinido denominado RSExecRole para conceder permisos del servidor de informes a la base de datos del servidor de informes. El RSExecRole rol se crea automáticamente con la base de datos del servidor de informes. Por lo general, nunca se debe modificar el rol ni asignar otros usuarios al mismo. Sin embargo, al mover una base de datos del servidor de informes a un motor de base de datos SQL Server nuevo o diferente, debe volver a crear la función en las bases de datos del sistema Master y MSDB.

Con las instrucciones siguientes, realizará los pasos siguientes:

  • Cree y aprovisione el RSExecRole en la base de datos del sistema maestro.

  • Cree y aprovisione el 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 tu capacidad de crear y aprovisionar RSExecRole, pero debes tener una copia de seguridad de las claves para verificar tu trabajo. Para obtener más información, vea Hacer copia de seguridad y restaurar claves de cifrado de Reporting Services.

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

  • Compruebe que el servicio Agente SQL Server está instalado y en ejecución en la instancia del Motor de base de datos que piensa utilizar.

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

Las instrucciones para crear manualmente el RSExecRole están diseñadas para usarse en el contexto de la migración de la instalación del informe del servidor. En este tema no se abordan tareas importantes como realizar copias de seguridad y mover la base de datos del servidor de informes, pero se documentan en la documentación del motor de base de datos.

Creación de RSExecRole en Master

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 RSExecRole rol.

Para crear RSExecRole en la base de datos del sistema maestro mediante Management Studio

  1. Inicie SQL Server Management Studio y establezca una conexión con la instancia del Motor de base de datos que hospeda la base de datos del servidor de informes.

  2. Abra Bases de datos.

  3. Abra Bases de datos del sistema.

  4. Abierto Master.

  5. Abra Seguridad.

  6. Abra Roles.

  7. Haga clic con el botón derecho en Roles de base de datosy 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 Objetos 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. Haz 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. Haz clic en Aceptar.

  16. Haga clic en Examinar.

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

    1. xp_sqlagent_enum_jobs

    2. xp_sqlagent_is_starting

    3. xp_sqlagent_notify

  18. Haga clic en Aceptar y 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 se deben conceder permisos execute para los tres procedimientos almacenados.

Página de propiedades del rol de 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 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, aprovisionará los procedimientos almacenados y las tablas por separado.

  2. Abierto MSDB.

  3. Abra Seguridad.

  4. Abra Roles.

  5. Haga clic con el botón derecho en Roles de base de datosy 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 Securables.

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

  10. Haz clic en Aceptar.

  11. Haga clic en Tipos de objeto.

  12. Haga clic en Procedimientos almacenados.

  13. Haz clic en Aceptar.

  14. Haga clic en Examinar.

  15. Desplácese hacia abajo en la lista de elementos y seleccione lo siguiente:

    1. sp_add_category

    2. sp_add_job (añadir trabajo)

    3. sp_add_jobschedule

    4. sp_add_jobserver

    5. sp_add_jobstep

    6. sp_eliminar_trabajo

    7. sp_help_category

    8. sp_help_job

    9. sp_help_jobschedule

    10. sp_verificar_identificadores_de_trabajo

  16. Haga clic en Aceptar y 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. A RSExecRole se le deben conceder permisos execute para los diez procedimientos almacenados.

  20. En la pestaña Elementos protegibles y 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. Haz clic en Aceptar.

  22. Haga clic en Tipos de objeto.

  23. Haga clic en Tablas.

  24. Haz clic en Aceptar.

  25. Haga clic en Examinar.

  26. Desplácese hacia abajo en la lista de elementos y seleccione lo siguiente:

    1. syscategories

    2. sysjobs

  27. Haga clic en Aceptar y 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 (modo nativo de SSRS).

Si va a actualizar el motor de base de datos a SQL Server 2019 (15.x), puede actualizarlo antes o después de mover la base de datos.

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

Restaurar claves de cifrado y verificar tu trabajo

Si ha asociado las bases de datos del servidor de informes, ahora debería poder completar los pasos siguientes para comprobar el trabajo.

Para comprobar la operabilidad 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 existente del servidor de informes.

  5. Escriba el nombre del servidor del motor de base de datos. Si adjuntó las bases de datos del servidor de informes a una instancia con nombre, debe escribir el nombre de instancia en este formato: <nombreServidor\<nombreDeInstancia>>.

  6. Haz clic en Prueba de conexión.

  7. Haga clic en Next.

  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.

Véase también

Mover las bases de datos del servidor de informes a otro equipo (modo nativo de SSRS)Administrador de configuración de Reporting Services (modo nativo)Crear una base de datos del servidor de informes en modo nativo (Administrador de configuración de SSRS)Copia de seguridad y restauración de claves de cifrado de Reporting Services