Integración de SSIS con SQL Database en Microsoft Fabric

En este tutorial se muestra cómo conectar un paquete SSIS a SQL Database en Microsoft Fabric mediante la autenticación mediante el principal de servicio de Microsoft Entra con la Microsoft OLE DB Driver for SQL Server.

Autenticación

Utiliza la autenticación de principal de servicio de Microsoft Entra para los paquetes SSIS, ya que normalmente se ejecutan de forma no interactiva bajo agentes. Este enfoque proporciona acceso seguro solo a la aplicación sin solicitudes de usuario ni autenticación multifactor (MFA). Permite aplicar el acceso de privilegios mínimos a través de los permisos de áreas de trabajo y elementos de Fabric.

La autenticación de entidad de servicio se alinea con la compatibilidad de Authentication=ActiveDirectoryServicePrincipal en Microsoft OLE DB Driver for SQL Server versión 18.5.0 y versiones posteriores, y mejora la auditoría y la higiene de secretos al almacenar secretos de cliente en entornos de catálogo de SSIS o Azure Key Vault.

Prerrequisitos

  • Un área de trabajo de Fabric con una base de datos SQL.
  • Registrar una entidad de servicio (registro de aplicaciones).
  • Habilite el acceso del principal de servicio al espacio de trabajo de Fabric.
  • Microsoft OLE DB Driver for SQL Server versión 18.5.0 o versiones posteriores, incluida la MSOLEDBSQL19.
  • Acceso de red saliente a Fabric SQL Database (directiva de conexión predeterminada).

Configuración de Connection Manager OLE DB de SSIS

Use el Microsoft OLE DB Driver for SQL Server (MSOLEDBSQL) y configure:

  • Autenticación: ActiveDirectoryServicePrincipal

  • Nombre de usuario (ID de usuario): ID de aplicación (cliente) de la entidad de servicio

  • Contraseña: secreto de cliente asociado al registro de la aplicación

  • Initial Catalog: nombre de Fabric SQL Database (en Configuración → Cadenas de conexión)

  • Nombre de servidor (origen de datos): Fabric host SQL (por ejemplo, <server-unique-identifer>.database.fabric.microsoft.com)

    Captura de pantalla del administrador de conexiones OLE DB parte 1.

    Captura de pantalla del Administrador de conexiones OLE DB, parte 2.

Ejecución en Fabric con la actividad Invocar paquete SSIS

Cuando se ejecuta en Fabric con la actividad Invoke SSIS Package, si el paquete usa el nivel de protección DontSaveSensitive, las credenciales no se conservan en el archivo de paquete. Los proporciona en tiempo de ejecución a través de la pestaña Administradores de conexión de la actividad Invocar paquete SSIS. Como alternativa, puede establecer el nivel EncryptSensitiveWithPasswordde protección del paquete en , que cifra las credenciales dentro del paquete. A continuación, proporcione la contraseña del paquete en la actividad Invocar paquete SSIS en tiempo de ejecución en lugar de proporcionar credenciales individuales del administrador de conexiones.

Pasos para invalidar la conexión de DontSaveSensitive

  1. En la actividad Invocar paquete SSIS, seleccione la pestaña Administradores de conexiones .
  2. Seleccione + Nuevo para agregar una entrada de invalidación del administrador de conexiones.
  3. Establezca el campo Name para que coincida con el nombre del Connection Manager OLE DB del paquete.
  4. Rellene las propiedades de conexión, incluidos el nombre de usuario (ID de aplicación/cliente) y la contraseña (secreto de cliente) para la autenticación del principal de servicio.
  5. Repita el proceso para cada administrador de conexiones que requiera credenciales.

Captura de pantalla de la pestaña Administradores de conexiones en la actividad Invocar paquete SSIS.

Pasos para proporcionar la contraseña del paquete para EncryptSensitiveWithPassword

  1. En el paquete SSIS, establezca la propiedad ProtectionLevel en EncryptSensitiveWithPassword y asigne una contraseña al paquete. Esto cifra todos los datos confidenciales (cadenas de conexión, credenciales) dentro del archivo de paquete.
  2. En la actividad Invocar paquete SSIS, vaya a la pestaña Configuración .
  3. En el campo Contraseña de cifrado , escriba la misma contraseña usada para cifrar el paquete.
  4. El tiempo de ejecución descifra automáticamente las credenciales incrustadas; no se necesitan modificaciones individuales del administrador de conexiones.

Captura de pantalla del cifrado de paquete en la actividad Invocar paquete SSIS.

Referencias