Condividi tramite


Abilitare l'autenticazione Microsoft Entra per il runtime di integrazione di Azure-SSIS

SI APPLICA A: Azure Data Factory Azure Synapse Analytics (anteprima)

Suggerimento

Provare Data Factory in Microsoft Fabric, una soluzione di analisi all-in-one per le aziende. Microsoft Fabric copre tutto, dallo spostamento dati al data science, all'analisi in tempo reale, alla business intelligence e alla creazione di report. Vedere le informazioni su come iniziare una nuova prova gratuita!

Questo articolo illustra come abilitare l'autenticazione di Microsoft Entra con l'identità gestita assegnata dal sistema o dall'utente specificata per Azure Data Factory (ADF) o Azure Synapse e usarla invece dei metodi di autenticazione convenzionali (ad esempio l'autenticazione SQL) per:

  • Creare un runtime di integrazione SSIS di Azure che a sua volta eseguirà il provisioning del database del catalogo SSIS (SSISDB) in database SQL di Azure server/Istanza gestita per conto dell'utente.

  • Connessione a varie risorse di Azure quando si eseguono pacchetti SSIS in Azure-SSIS IR.

Per altre informazioni sull'identità gestita per Azure Data Factory, vedere Identità gestita per Data Factory e Azure Synapse.

Nota

  • In questo scenario, l'autenticazione di Microsoft Entra con l'identità gestita assegnata dal sistema o dall'utente specificata per ADF viene usata solo nel provisioning e nelle successive operazioni di avvio del runtime di integrazione Azure-SSIS che eseguiranno il provisioning e la connessione a SSISDB. Per le esecuzioni di pacchetti SSIS, il runtime di integrazione Azure-SSIS si connetterà comunque a SSISDB per recuperare i pacchetti usando l'autenticazione SQL con account completamente gestiti (AzureIntegrationServiceDbo e AzureIntegrationServiceWorker) creati durante il provisioning di SSISDB.

  • Per usare la funzionalità di gestione connessione con identità gestita assegnata dall'utente, ad esempio, è necessario eseguire il provisioning di SSIS IR con la stessa identità gestita assegnata dall'utente usata nella gestione connessione.

  • Se il runtime di integrazione Azure-SSIS è già stato creato usando l'autenticazione SQL, non è possibile riconfigurarlo per l'uso dell'autenticazione di Microsoft Entra tramite PowerShell in questo momento, ma è possibile farlo tramite portale di Azure/app ADF.

Nota

È consigliabile usare il modulo Azure Az PowerShell per interagire con Azure. Per iniziare, vedere Installare Azure PowerShell. Per informazioni su come eseguire la migrazione al modulo AZ PowerShell, vedere Eseguire la migrazione di Azure PowerShell da AzureRM ad Az.

Abilitare l'autenticazione di Microsoft Entra in database SQL di Azure

database SQL di Azure supporta la creazione di un database con un utente di Microsoft Entra. Prima di tutto, è necessario creare un gruppo Microsoft Entra con l'identità gestita assegnata dal sistema o dall'utente specificata per ADF come membro. Successivamente, è necessario impostare un utente di Microsoft Entra come amministratore di Active Directory per il server database SQL di Azure e quindi connettersi a tale utente in SQL Server Management Studio (SSMS). Infine, è necessario creare un utente indipendente che rappresenta il gruppo Microsoft Entra, in modo che l'identità gestita assegnata dal sistema o dall'utente specificata per ADF possa essere usata da Azure-SSIS IR per creare SSISDB per conto dell'utente.

Creare un gruppo Microsoft Entra con l'identità gestita assegnata dal sistema o dall'utente specificata per ADF come membro

È possibile usare un gruppo Microsoft Entra esistente o crearne uno nuovo usando Azure AD PowerShell.

  1. Installare il modulo Azure AD PowerShell.

  2. Accedere usando Connect-AzureAD, eseguire il cmdlet seguente per creare un gruppo e salvarlo in una variabile:

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

    Nota

    I moduli Azure AD e MSOnline PowerShell sono deprecati a partire dal 30 marzo 2024. Per maggiori informazioni, leggere l'aggiornamento sulla deprecazione. Dopo questa data, il supporto per questi moduli è limitato all'assistenza alla migrazione a Microsoft Graph PowerShell SDK e alle correzioni di sicurezza. I moduli deprecati continueranno a funzionare fino al 30 marzo 2025.

    È consigliabile eseguire la migrazione a Microsoft Graph PowerShell per interagire con Microsoft Entra ID (in precedenza Azure AD). Per domande comuni sulla migrazione, consultare le Domande frequenti sulla migrazione. Nota: le versioni 1.0.x di MSOnline potrebbero subire interruzioni dopo il 30 giugno 2024.

    Il risultato sarà analogo all'esempio seguente, che visualizza anche il valore della variabile:

    $Group
    
    ObjectId DisplayName Description
    -------- ----------- -----------
    6de75f3c-8b2f-4bf4-b9f8-78cc60a18050 SSISIrGroup
    
  3. Aggiungere l'identità gestita assegnata dal sistema o dall'utente specificata per ADF al gruppo. È possibile seguire l'articolo Identità gestita per Data Factory o Azure Synapse per ottenere l'ID oggetto dell'identità gestita assegnata dal sistema o dall'utente specificato per ADF, ad esempio 765ad4ab-XXXX-XXXX-XXXX-51ed985819dc, ma non usare l'ID applicazione per questo scopo.

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

    È anche possibile controllare l'appartenenza a gruppi in un secondo momento.

    Get-AzureAdGroupMember -ObjectId $Group.ObjectId
    

Configurare l'autenticazione di Microsoft Entra per database SQL di Azure

È possibile configurare e gestire l'autenticazione di Microsoft Entra per database SQL di Azure seguendo questa procedura:

  1. In portale di Azure selezionare Tutti i servizi ->SQL Server dal riquadro di spostamento a sinistra.

  2. Selezionare il server database SQL di Azure da configurare con l'autenticazione Microsoft Entra.

  3. Nella sezione Impostazioni del pannello selezionare Amministratore di Active Directory.

  4. Sulla barra dei comandi selezionare Imposta amministratore.

  5. Selezionare un account utente di Microsoft Entra da rendere amministratore del server e quindi selezionare Seleziona.

  6. Sulla barra dei comandi selezionare Salva.

Creare un utente indipendente in database SQL di Azure che rappresenta il gruppo Microsoft Entra

Per questo passaggio successivo, è necessario SSMS.

  1. Avviare SSMS.

  2. Nella finestra di dialogo da Connessione a server immettere il nome del server nel campo Nome server.

  3. Nel campo Autenticazione selezionare Active Directory - Universal with MFA support (è anche possibile usare gli altri due tipi di autenticazione di Active Directory, vedere Configurare e gestire l'autenticazione di Microsoft Entra per database SQL di Azure).

  4. Nel campo Nome utente immettere il nome dell'account Microsoft Entra impostato come amministratore del server, ad esempio testuser@xxxonline.com.

  5. Selezionare Connessione e completare il processo di accesso.

  6. Nella Esplora oggetti espandere la cartella Database ->Database di sistema.

  7. Fare clic con il pulsante destro del mouse sul database master e scegliere Nuova query.

  8. Nella finestra query immettere il comando T-SQL seguente e selezionare Esegui sulla barra degli strumenti.

    CREATE USER [SSISIrGroup] FROM EXTERNAL PROVIDER
    

    Il comando dovrebbe completare l'operazione correttamente, creando un utente indipendente per rappresentare il gruppo.

  9. Cancellare il contenuto della finestra di query, immettere il comando T-SQL seguente e selezionare Esegui sulla barra degli strumenti.

    ALTER ROLE dbmanager ADD MEMBER [SSISIrGroup]
    

    Il comando dovrebbe completare l'operazione correttamente, concedendo all'utente indipendente la possibilità di creare un database (SSISDB).

  10. Se il database SSISDB è stato creato usando l'autenticazione SQL e si vuole passare all'uso dell'autenticazione Di Microsoft Entra per il runtime di integrazione Azure-SSIS per accedervi, assicurarsi innanzitutto che i passaggi precedenti per concedere le autorizzazioni al database master siano stati completati correttamente. Fare quindi clic con il pulsante destro del mouse sul database SSISDB e scegliere Nuova query.

    1. Nella finestra query immettere il comando T-SQL seguente e selezionare Esegui sulla barra degli strumenti.

      CREATE USER [SSISIrGroup] FROM EXTERNAL PROVIDER
      

      Il comando dovrebbe completare l'operazione correttamente, creando un utente indipendente per rappresentare il gruppo.

    2. Cancellare il contenuto della finestra di query, immettere il comando T-SQL seguente e selezionare Esegui sulla barra degli strumenti.

      ALTER ROLE db_owner ADD MEMBER [SSISIrGroup]
      

      Il comando dovrebbe completare l'operazione correttamente, concedendo all'utente indipendente la possibilità di creare database SSISDB.

Abilitare l'autenticazione di Microsoft Entra in Istanza gestita di SQL di Azure

Istanza gestita di SQL di Azure supporta la creazione di un database con l'identità gestita assegnata dal sistema o dall'utente specificata direttamente per ADF. Non è necessario aggiungere l'identità gestita assegnata dal sistema o dall'utente specificata per ADF a un gruppo Microsoft Entra né creare un utente indipendente che rappresenta tale gruppo in Istanza gestita di SQL di Azure.

Configurare l'autenticazione Windows per un'Istanza gestita di SQL di Azure

Seguire la procedura descritta in Effettuare il provisioning di un amministratore di Microsoft Entra per Istanza gestita di SQL di Azure.

Aggiungere l'identità gestita assegnata dal sistema o dall'utente specificata per ADF o Azure Synapse come utente in Istanza gestita di SQL di Azure

Per questo passaggio successivo, è necessario SSMS.

  1. Avviare SSMS.

  2. Connessione a Istanza gestita di SQL di Azure usando l'account di SQL Server che è un amministratore di sistema. Si tratta di una limitazione temporanea che verrà rimossa dopo che il supporto per le entità server di Microsoft Entra (account di accesso) in Istanza gestita di SQL di Azure diventa disponibile a livello generale. Se si tenta di usare un account amministratore di Microsoft Entra per creare l'account di accesso, verrà visualizzato l'errore seguente: Msg 15247, Livello 16, Stato 1, Riga 1 Utente non dispone dell'autorizzazione per eseguire questa azione.

  3. Nella Esplora oggetti espandere la cartella Database ->Database di sistema.

  4. Fare clic con il pulsante destro del mouse sul database master e scegliere Nuova query.

  5. Nella finestra di query eseguire lo script T-SQL seguente per aggiungere l'identità gestita assegnata dal sistema o dall'utente specificata per ADF come utente.

    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}]
    

    Se si usa l'identità gestita dal sistema per l'istanza di Azure Data Factory, il nome dell'identità gestita deve essere il nome relativo ad Azure Data Factory. Se si usa un'identità gestita assegnata dall'utente per Azure Data Factory, il nome dell'identità gestita deve essere il nome dell'identità gestita assegnata dall'utente specificata.

    Il comando deve essere completato correttamente, concedendo all'identità gestita assegnata dal sistema/utente per ADF la possibilità di creare un database (SSISDB).

  6. Se il database SSISDB è stato creato usando l'autenticazione SQL e si vuole passare all'uso dell'autenticazione Di Microsoft Entra per il runtime di integrazione Azure-SSIS per accedervi, assicurarsi innanzitutto che i passaggi precedenti per concedere le autorizzazioni al database master siano stati completati correttamente. Fare quindi clic con il pulsante destro del mouse sul database SSISDB e scegliere Nuova query.

    1. Nella finestra query immettere il comando T-SQL seguente e selezionare Esegui sulla barra degli strumenti.

      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}]
      

      Il comando deve essere completato correttamente, concedendo all'identità gestita assegnata dal sistema/dall'utente per ADF la possibilità di accedere a SSISDB.

Effettuare il provisioning di Azure-SSIS IR nel portale di Azure o nell'app ADF

Quando si effettua il provisioning del runtime di integrazione Azure-SSIS nell'app portale di Azure/ADF, nella pagina Impostazioni di distribuzione selezionare la casella di controllo Crea catalogo SSIS (SSISDB) ospitato da database SQL di Azure server/Istanza gestita per archiviare i progetti/pacchetti/ambienti/log di esecuzione e selezionare la casella di controlloUsare l'autenticazione di Microsoft Entra con l'identità gestita dal sistema per Data Factory o Usare l'autenticazione di Microsoft Entra con una casella di controllo identità gestita assegnata dall'utente per Data Factory per scegliere il metodo di autenticazione Microsoft Entra per Azure-SSIS IR per accedere al server di database che ospita SSISDB.

Per altre informazioni, vedere Creare un runtime di integrazione Azure-SSIS in Azure Data Factory.

Effettuare il provisioning di Azure-SSIS IR con PowerShell

Per eseguire il provisioning del runtime di integrazione Azure-SSIS con PowerShell, procedere come segue:

  1. Installare il modulo Azure PowerShell .

  2. Nello script non impostare il parametro CatalogAdminCredential. Ad esempio:

    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
    

Eseguire pacchetti SSIS usando l'autenticazione Microsoft Entra con l'identità gestita assegnata dal sistema o dall'utente specificata per ADF

Quando si eseguono pacchetti SSIS in Azure-SSIS IR, è possibile usare l'autenticazione Di Microsoft Entra con l'identità gestita assegnata dal sistema o dall'utente specificata per connettersi a varie risorse di Azure. Attualmente è supportata l'autenticazione di Microsoft Entra con l'identità gestita assegnata dal sistema o dall'utente specificata per ADF nelle gestioni connessioni seguenti.