Usar funciones de Integration Services

SQL ServerIntegration Services incluye las tres funciones fijas de nivel de base de datos, db_ssisadmin, db_ssisltduser y db_ssisoperator, para controlar el acceso a los paquetes. Las funciones sólo se pueden implementar en los paquetes que se guardan en la base de datos msdb de SQL Server. Para asignar funciones a un paquete se utiliza SQL Server Management Studio. Las asignaciones de funciones se guardan en la base de datos msdb.

En la tabla siguiente se describen las acciones de lectura/escritura de Windows y las funciones fijas de nivel de base de datos en Integration Services.

Función

Acción de lectura

Acción de escritura

db_ssisadmin

O bien

sysadmin

Enumerar los paquetes propios.

Enumerar todos los paquetes.

Ver los paquetes propios.

Ver todos los paquetes.

Ejecutar los paquetes propios.

Ejecutar todos los paquetes.

Exportar los paquetes propios.

Exportar todos los paquetes.

Ejecutar todos los paquetes del Agente SQL Server.

Importar paquetes.

Eliminar los paquetes propios.

Eliminar todos los paquetes.

Cambiar las funciones de los paquetes propios.

Cambiar las funciones de todos los paquetes.

Nota importanteImportante
Los miembros de la función db_ssisadmin y de la función dc_admin quizá puedan elevar sus privilegios a sysadmin. Esta elevación de privilegio se puede producir porque estas funciones pueden modificar los paquetes de Integration Services y SQL Server puede ejecutar estos paquetes utilizando el contexto de seguridad de sysadmin del Agente SQL Server. Para protegerse contra esta elevación de privilegio al ejecutar planes de mantenimiento, conjuntos de recopilación de datos y otros paquetes de Integration Services, configure los trabajos del Agente SQL Server que ejecutan paquetes para utilizar una cuenta de proxy con privilegios limitados o agregar sólo los miembros de sysadmin a las funciones dc_admin y db_ssisadmin.

db_ssisltduser

Enumerar los paquetes propios.

Enumerar todos los paquetes.

Ver los paquetes propios.

Ejecutar los paquetes propios.

Exportar los paquetes propios.

Importar paquetes.

Eliminar los paquetes propios.

Cambiar las funciones de los paquetes propios.

db_ssisoperator

Enumerar todos los paquetes.

Ver todos los paquetes.

Ejecutar todos los paquetes.

Exportar todos los paquetes.

Ejecutar todos los paquetes del Agente SQL Server.

Ninguna

Administradores de Windows

Ver los detalles de ejecución de todos los paquetes que se están ejecutando.

Detener todos los paquetes en ejecución en ese momento.

La tabla sysssispackages de msdb contiene los paquetes que se guardan en SQL Server. Para obtener más información, vea sysssispackages (Transact-SQL).

La tabla sysssispackages incluye columnas que contienen información sobre las funciones asignadas a los paquetes.

  • La columna readerrole especifica la función que tiene acceso de lectura al paquete.

  • La columna writerrole especifica la función que tiene acceso de escritura al paquete.

  • La columna ownersid contiene el identificador de seguridad único del usuario que creó el paquete. Esta columna define el propietario del paquete.

De forma predeterminada, los permisos de las funciones fijas de nivel de base de datos db_ssisadmin y db_ssisoperator y el identificador de seguridad único del usuario que creó el paquete se aplican a la función de lector para paquetes, y los permisos de la función db_ssisadmin y el identificador de seguridad único del usuario que creó el paquete se aplican a la función de escritor. Un usuario debe ser miembro de la función db_ssisadmin, db_ssisltduser o db_ssisoperator para tener acceso de lectura al paquete. Un usuario debe ser miembro de la función db_ssisadmin para tener acceso de escritura.

Las funciones fijas de nivel de base de datos trabajan conjuntamente con las funciones definidas por el usuario. Las funciones definidas por el usuario son aquellas que se crean en SQL Server Management Studio y posteriormente se utilizan para asignar permisos a los paquetes. Para tener acceso a un paquete, un usuario debe ser miembro de la función definida por el usuario y de la función fija de nivel de base de datos Integration Services pertinente. Por ejemplo, si los usuarios son miembros de la función definida por el usuario AuditUsers asignada a un paquete, también deberán ser miembros de la función db_ssisadmin, db_ssisltduser o db_ssisoperator para tener acceso de lectura al paquete.

Si no asigna funciones definidas por el usuario a los paquetes, el acceso a dichos paquetes se determina con las funciones fijas de nivel de base de datos.

Si desea utilizar funciones definidas por el usuario, debe agregarlas a la base de datos msdb antes de asignarlas a los paquetes. Puede crear funciones de base de datos en SQL Server Management Studio.

Las funciones de nivel de base de datos de Integration Services conceden los derechos en las tablas del sistema de Integration Services en la base de datos msdb, pero no en las tablas del sistema DTS, como sysdtspackages de la base de datos msdb. Tiene que conceder los derechos de usuarios en las tablas del sistema DTS para poder realizar ciertas tareas de administración, como importar un paquete DTS en Management Studio. Para obtener más información acerca de la compatibilidad con DTS, vea Compatibilidad para Servicios de transformación de datos (DTS) en SQL Server 2008.

Paso 1: abrir el Explorador de objetos y conectarse a Integration Services

Antes de asignar funciones a los paquetes con SQL Server Management Studio, debe abrir el Explorador de objetos en SQL Server Management Studio y conectarse a Integration Services.

Debe iniciar el servicio Integration Services antes de conectarse a Integration Services.

Para abrir el Explorador de objetos y conectarse a Integration Services

  1. Abra SQL Server Management Studio.

  2. Haga clic en Explorador de objetos, en el menú Ver.

  3. En la barra de herramientas del Explorador de objetos, haga clic en Conectar y, a continuación, en Integration Services.

  4. En el cuadro de diálogo Conectar al servidor, indique el nombre del servidor. Puede utilizar un punto (.), (local) o localhost para indicar el servidor local.

  5. Haga clic en Conectar.

Paso 2: asignar funciones de lector y escritor a los paquetes

Puede asignar una función de lector y una función de escritor a cada paquete.

Asignar funciones de lector y escritor a un paquete

  1. En el Explorador de objetos, localice la conexión a Integration Services.

  2. Expanda la carpeta Paquetes almacenados y, a continuación, la subcarpeta que contiene el paquete al que desea asignar funciones.

  3. Haga clic con el botón secundario en el paquete al que desea asignar funciones.

  4. En el cuadro de diálogo Funciones de paquete, seleccione una función de lector de la lista Función de lector y una función de escritor de la lista Función de escritor.

  5. Haga clic en Aceptar.

Crear una función definida por el usuario

Debe iniciar SQL Server(el servicio MSSQLSERVER) antes de conectarse al motor de base de datos y tener acceso a la base de datos msdb.

Para crear una función definida por el usuario

  1. Abra SQL Server Management Studio.

  2. Haga clic en Explorador de objetos, en el menú Ver.

  3. En la barra de herramientas del Explorador de objetos, haga clic en Conectar y, a continuación, en Motor de base de datos.

  4. En el cuadro de diálogo Conectar al servidor, indique el nombre del servidor y seleccione un modo de autenticación. Puede utilizar un punto (.), (local) o localhost para indicar el servidor local.

  5. Haga clic en Conectar.

  6. Expanda Bases de datos, Bases de datos del sistema, msdb, Seguridad y Funciones.

  7. En el nodo Funciones, haga clic con el botón secundario en Funciones de base de datos y, a continuación, en Nueva función de base de datos.

  8. En la página General, indique un nombre y si lo desea, especifique un propietario, esquemas de propiedad y agregue miembros de funciones.

  9. Opcionalmente, haga clic en Permisos y configure permisos de objetos.

  10. Opcionalmente, haga clic en Propiedades extendidas y configure las propiedades extendidas.

  11. Haga clic en Aceptar.

Icono de Integration Services (pequeño) Manténgase al día con Integration Services

Para obtener las más recientes descargas, artículos, ejemplos y vídeos de Microsoft, así como soluciones seleccionadas de la comunidad, visite la página de Integration Services en MSDN o TechNet:

Para recibir notificaciones automáticas de estas actualizaciones, suscríbase a las fuentes RSS disponibles en la página.