Habilitación de la autenticación de Microsoft Entra para Azure-SSIS Integration Runtime

SE APLICA A: Azure Data Factory Azure Synapse Analytics (versión preliminar)

Sugerencia

Pruebe Data Factory en Microsoft Fabric, una solución de análisis todo en uno para empresas. Microsoft Fabric abarca todo, desde el movimiento de datos hasta la ciencia de datos, el análisis en tiempo real, la inteligencia empresarial y los informes. Obtenga información sobre cómo iniciar una nueva evaluación gratuita.

En este artículo se muestra cómo habilitar la autenticación de Microsoft Entra con el sistema especificado o la identidad administrada asignada por el usuario para Azure Data Factory (ADF) o Azure Synapse y usarla en lugar de los métodos de autenticación convencionales (como la autenticación de SQL) para:

  • Crear un entorno de ejecución de integración de Azure-SSIS que, a su vez, aprovisionará la base de datos del catálogo de SSIS (SSISDB) en el servidor de Azure SQL Database o la Instancia administrada en su nombre.

  • Conectarse a varios recursos de Azure al ejecutar paquetes SSIS en Azure-SSIS IR.

Para más información sobre la identidad administrada de ADF, consulte Identidad administrada de Data Factory y Azure Synapse.

Nota:

  • En este escenario, la autenticación de Microsoft Entra con el sistema especificado o la identidad administrada asignada por el usuario para su instancia de ADF solo se usa en el aprovisionamiento y en las operaciones de inicio posteriores de Azure-SSIS IR que, a su vez, aprovisionará o conectará SSISDB. Para las ejecuciones de paquetes de SSIS, la instancia de Azure-SSIS IR se conectará con SSISDB para capturar los paquetes mediante la autenticación de SQL con cuentas totalmente administradas (AzureIntegrationServiceDbo y AzureIntegrationServiceWorker) que se crean durante el aprovisionamiento de SSISDB.

  • Para usar la característica de identidad administrada asignada por el usuario del administrador de conexiones, el administrador de conexiones OLEDB, por ejemplo, SSIS IR debe aprovisionarse con la misma identidad administrada asignada por el usuario que se usa en el administrador de conexiones.

  • Si ya ha creado una instancia de Azure-SSIS IR con la autenticación de SQL, no puede volver a configurarla para usar la autenticación de Microsoft Entra con PowerShell en este momento, pero puede hacerlo en Azure Portal o la aplicación ADF.

Nota:

Se recomienda usar el módulo Azure Az de PowerShell para interactuar con Azure. Consulte Instalación de Azure PowerShell para empezar. Para más información sobre cómo migrar al módulo Az de PowerShell, consulte Migración de Azure PowerShell de AzureRM a Az.

Habilitar la autenticación de Microsoft Entra en Azure SQL Database

Azure SQL Database admite la creación de una base de datos con un usuario de Microsoft Entra. En primer lugar, debe crear un grupo de Microsoft Entra con el sistema especificado o la identidad administrada asignada por el usuario para ADF como miembro. A continuación, debe establecer un usuario de Microsoft Entra como administrador de Active Directory para el servidor de Azure SQL Database y luego conectarse desde SQL Server Management Studio (SSMS) con ese usuario. Por último, deberá crear un usuario contenido que represente al grupo de Microsoft Entra, de modo que Azure-SSIS IR pueda usar el sistema especificado o la identidad administrada asignada por el usuario para ADF para crear SSISDB en su nombre.

Crear un grupo de Microsoft Entra con el sistema especificado o la identidad administrada asignada por el usuario para ADF como miembro

Puede utilizar un grupo de Microsoft Entra existente o crear uno nuevo con Azure AD PowerShell.

  1. Instale el módulo de Azure AD PowerShell.

  2. Inicie sesión con Connect-AzureAD, ejecute el siguiente cmdlet para crear el grupo y guárdelo en una variable:

    $Group = New-AzureADGroup -DisplayName "SSISIrGroup" `
                              -MailEnabled $false `
                              -SecurityEnabled $true `
                              -MailNickName "NotSet"
    

    Nota:

    Los módulos de PowerShell de Azure AD y MSOnline están en desuso a partir del 30 de marzo de 2024. Para obtener más información, lea la actualización de desuso. Desde esta fecha, el soporte de estos módulos se limita a la asistencia de migración al SDK de PowerShell de Microsoft Graph y a las correcciones de seguridad. Los módulos en desuso seguirán funcionando hasta el 30 de marzo de 2025.

    Se recomienda migrar a PowerShell de Microsoft Graph para interactuar con Microsoft Entra ID (anteriormente Azure AD). Para preguntas comunes sobre la migración, consulte las Preguntas más frecuentes sobre migración. Nota: Las versiones 1.0.x de MSOnline podrían experimentar interrupciones después del 30 de junio de 2024.

    El resultado es similar al del siguiente ejemplo, que también muestra el valor de la variable:

    $Group
    
    ObjectId DisplayName Description
    -------- ----------- -----------
    6de75f3c-8b2f-4bf4-b9f8-78cc60a18050 SSISIrGroup
    
  3. Agregue el sistema especificado o la identidad administrada asignada por el usuario para ADF al grupo. Puede seguir el artículo Identidad administrada de Data Factory o Azure Synapse para obtener el identificador de objeto del sistema especificado o la identidad administrada asignada por el usuario (por ejemplo, 765ad4ab-XXXX-XXXX-XXXX-51ed985819dc, pero no use el id. de aplicación de la identidad para este propósito).

    Add-AzureAdGroupMember -ObjectId $Group.ObjectId -RefObjectId 765ad4ab-XXXX-XXXX-XXXX-51ed985819dc
    

    También puede comprobar la pertenencia al grupo más adelante.

    Get-AzureAdGroupMember -ObjectId $Group.ObjectId
    

Configurar la autenticación de Microsoft Entra para Azure SQL Database

Puede configurar y administrar la autenticación de Microsoft Entra para Azure SQL Database siguiendo estos pasos:

  1. En Azure Portal, seleccione Todos los servicios ->Servidores SQL en el panel de navegación izquierdo.

  2. Seleccione el servidor de Azure SQL Database que quiera configurar con la autenticación de Microsoft Entra.

  3. En la sección Configuración de la hoja, haga clic en Administrador de Active Directory.

  4. En la barra de comandos, seleccione Establecer administrador.

  5. Seleccione una cuenta de usuario de Microsoft Entra para que se convierta en administrador del servidor y seleccione Seleccionar.

  6. En la barra de comandos, seleccione Guardar.

Cree un usuario contenido en Azure SQL Database que represente al grupo de Microsoft Entra

Para el siguiente paso, necesita SSMS.

  1. Inicie SSMS.

  2. En el cuadro de diálogo Conectar al servidor, escriba el nombre de su servidor en el campo Nombre del servidor.

  3. En el campo Autenticación, seleccione Active Directory - Universal compatible con MFA (también puede usar los otros dos tipos de autenticación de Active Directory; consulte Configuración y administración de la autenticación de Microsoft Entra para Azure SQL Database).

  4. En el campo Nombre de usuario, escriba el nombre de la cuenta de Microsoft Entra que estableció como administrador del servidor. Por ejemplo, testuser@xxxonline.com.

  5. Seleccione Conectar y complete el proceso de inicio de sesión.

  6. En el Explorador de objetos, expanda la carpeta Bases de datos ->Bases de datos del sistema.

  7. Haga clic con el botón derecho en la base de datos maestra y seleccione Nueva consulta.

  8. En la ventana de consulta, escriba el siguiente comando T-SQL y seleccione Ejecutar en la barra de herramientas.

    CREATE USER [SSISIrGroup] FROM EXTERNAL PROVIDER
    

    El comando debería completarse correctamente y crear el usuario contenido para representar al grupo.

  9. Borre la ventana de consulta, escriba el siguiente comando T-SQL y seleccione Ejecutar en la barra de herramientas.

    ALTER ROLE dbmanager ADD MEMBER [SSISIrGroup]
    

    El comando debería completarse correctamente y conceder al usuario contenido la capacidad de crear una base de datos (SSISDB).

  10. Si la SSISDB se ha creado mediante la autenticación de SQL y desea cambiar a la autenticación de Microsoft Entra, con el fin de que Azure-SSIS IR tenga acceso a ella, primero debe asegurarse de que los pasos señalados anteriormente para conceder permisos a la base de datos maestra (master) se han realizado correctamente. Después, haga clic con el botón derecho en la base de datos SSISDB y seleccione Nueva consulta.

    1. En la ventana de consulta, escriba el siguiente comando T-SQL y seleccione Ejecutar en la barra de herramientas.

      CREATE USER [SSISIrGroup] FROM EXTERNAL PROVIDER
      

      El comando debería completarse correctamente y crear el usuario contenido para representar al grupo.

    2. Borre la ventana de consulta, escriba el siguiente comando T-SQL y seleccione Ejecutar en la barra de herramientas.

      ALTER ROLE db_owner ADD MEMBER [SSISIrGroup]
      

      El comando debería completarse correctamente y conceder al usuario contenido la capacidad de acceder a SSISDB.

Habilitar la autenticación de Microsoft Entra en Azure SQL Managed Instance

Azure SQL Managed Instance admite la creación de una base de datos con sistema especificado o la identidad administrada asignada por el usuario para ADF directamente. No necesita unir el sistema especificado o la identidad administrada asignada por el usuario para ADF a un grupo de Microsoft Entra ni crear un usuario contenido que represente dicho grupo en Azure SQL Managed Instance.

Configurar la autenticación de Microsoft Entra para Azure SQL Managed Instance

Siga los pasos que aparecen en Aprovisionamiento de un administrador de Microsoft Entra para Azure SQL Managed Instance.

Agregue el sistema especificado o la identidad administrada asignada por el usuario para ADF o Azure Synapse como usuario de Azure SQL Managed Instance.

Para el siguiente paso, necesita SSMS.

  1. Inicie SSMS.

  2. Conéctese a Azure SQL Managed Instance con una cuenta de SQL Server que sea sysadmin. Esta es una limitación temporal que se quitará una vez que el soporte para las entidades de seguridad (inicios de sesión) del servidor de Microsoft Entra de Azure SQL Managed Instance estén disponibles con carácter general. Si intenta usar una cuenta de administrador de Microsoft Entra para crear el inicio de sesión, verá el siguiente error: Mens. 15247, nivel 16, estado 1, línea 1 El usuario no tiene permiso para realizar esta acción.

  3. En el Explorador de objetos, expanda la carpeta Bases de datos ->Bases de datos del sistema.

  4. Haga clic con el botón derecho en la base de datos maestra y seleccione Nueva consulta.

  5. En la ventana de consulta, ejecute el siguiente script de T-SQL para agregar el sistema especificado o la identidad administrada asignada por el usuario para ADF como usuario.

    CREATE LOGIN [{your managed identity name}] FROM EXTERNAL PROVIDER
    ALTER SERVER ROLE [dbcreator] ADD MEMBER [{your managed identity name}]
    ALTER SERVER ROLE [securityadmin] ADD MEMBER [{your managed identity name}]
    

    Si usa la identidad administrada del sistema para ADF, el nombre de la identidad administrada debe ser el nombre de ADF. Si usa una identidad administrada asignada por el usuario para ADF, el nombre de la identidad administrada debe ser el nombre de la identidad administrada asignada por el usuario especificado.

    El comando debería completarse correctamente y conceder al sistema o identidad administrada asignada por el usuario para ADF la capacidad de crear una base de datos (SSISDB).

  6. Si la SSISDB se ha creado mediante la autenticación de SQL y desea cambiar a la autenticación de Microsoft Entra, con el fin de que Azure-SSIS IR tenga acceso a ella, primero debe asegurarse de que los pasos señalados anteriormente para conceder permisos a la base de datos maestra (master) se han realizado correctamente. Después, haga clic con el botón derecho en la base de datos SSISDB y seleccione Nueva consulta.

    1. En la ventana de consulta, escriba el siguiente comando T-SQL y seleccione Ejecutar en la barra de herramientas.

      CREATE USER [{your managed identity name}] FOR LOGIN [{your managed identity name}] WITH DEFAULT_SCHEMA = dbo
      ALTER ROLE db_owner ADD MEMBER [{your managed identity name}]
      

      El comando debería completarse correctamente y conceder al sistema o identidad administrada asignada por el usuario para ADF la capacidad de acceder a SSISDB.

Aprovisionar Azure-SSIS IR en Azure Portal o ADF

Al aprovisionar la aplicación Azure-SSIS IR en Azure Portal/ADF, en la página Configuración de implementación, seleccione la casilla Crear catálogo de SSIS (SSISDB) hospedado por un servidor de Azure SQL Database o una instancia administrada para almacenar los proyectos, paquetes, entornos y registros de ejecución y, a continuación, active la casilla Usar autenticación de Microsoft Entra con la identidad administrada del sistema para Data Factory o Usar autenticación de Microsoft Entra con una identidad administrada asignada por el usuario para Data Factory para elegir un método de autenticación de Microsoft Entra para Azure-SSIS IR para acceder al servidor de base de datos que hospeda SSISDB.

Para más información, consulte Creación de una instancia de Azure-SSIS IR en ADF.

Aprovisionamiento de Azure-SSIS IR con PowerShell

Para aprovisionar el entorno de ejecución para la integración de SSIS en Azure con PowerShell, haga lo siguiente:

  1. Instale el módulo Azure PowerShell.

  2. En el script, no establezca el parámetro CatalogAdminCredential. Por ejemplo:

    Set-AzDataFactoryV2IntegrationRuntime -ResourceGroupName $ResourceGroupName `
                                          -DataFactoryName $DataFactoryName `
                                          -Name $AzureSSISName `
                                          -Description $AzureSSISDescription `
                                          -Type Managed `
                                          -Location $AzureSSISLocation `
                                          -NodeSize $AzureSSISNodeSize `
                                          -NodeCount $AzureSSISNodeNumber `
                                          -Edition $AzureSSISEdition `
                                          -MaxParallelExecutionsPerNode $AzureSSISMaxParallelExecutionsPerNode `
                                          -CatalogServerEndpoint $SSISDBServerEndpoint `
                                          -CatalogPricingTier $SSISDBPricingTier
    
    Start-AzDataFactoryV2IntegrationRuntime -ResourceGroupName $ResourceGroupName `
                                            -DataFactoryName $DataFactoryName `
                                            -Name $AzureSSISName
    

Ejecución de paquetes SSIS mediante autenticación de Microsoft Entra con el sistema especificado o la identidad administrada asignada por el usuario para ADF

Al ejecutar paquetes SSIS en Azure-SSIS IR, puede usar la autenticación de Microsoft Entra el sistema especificado o la identidad administrada asignada por el usuario para que ADF se conecte a varios recursos de Azure. Actualmente, admitimos la autenticación de Microsoft Entra con el sistema especificado o la identidad administrada asignada por el usuario para ADF en los siguientes administradores de conexiones.