Habilitar a autenticação do Microsoft Entra para o Azure-SSIS integration runtime

APLICA-SE A: Azure Data Factory Azure Synapse Analytics (Versão prévia)

Dica

Experimente o Data Factory no Microsoft Fabric, uma solução de análise tudo-em-um para empresas. O Microsoft Fabric abrange desde movimentação de dados até ciência de dados, análise em tempo real, business intelligence e relatórios. Saiba como iniciar uma avaliação gratuita!

Esse artigo vai mostrar como habilitar uma autenticação do Microsoft Entra com a identidade gerenciada atribuída pelo usuário/sistema especificada para o ADF (Azure Data Factory) ou Azure Synapse bem como usá-la em vez de métodos de autenticação convencionais (como uma autenticação SQL) para:

  • Criar um Azure-SSIS IR (Integration Runtime) que vai provisionar o SSISDB (banco de dados do catálogo do SSIS) no servidor/na Instância Gerenciada do Banco de Dados SQL do Azure em seu nome.

  • Conectar-se a vários recursos do Azure ao executar pacotes do SSIS no Azure-SSIS IR.

Para obter mais informações sobre a identidade gerenciada para o ADF, consulte Identidade gerenciada do Azure Data Factory e Azure Synapse.

Observação

  • Nesse cenário, uma autenticação do Microsoft Entra com a identidade gerenciada atribuída pelo usuário/sistema especificada para o ADF é usada somente no provisionamento e nas operações iniciais e subsequentes do Azure-SSIS IR, que vai provisionar o SSISDB e/ou se conectar a ele. Em execuções do pacote SSIS, o Azure-SSIS IR ainda se conectará ao SSISDB para executar pacotes usando uma autenticação SQL e contas totalmente gerenciadas criadas (AzureIntegrationServiceDbo e AzureIntegrationServiceWorker) durante o provisionamento do SSISDB.

  • Para usar o recurso de identidade gerenciada atribuída pelo usuário do gerenciador de conexões, o gerenciador de conexões do OLEDB, por exemplo, o SSIS IR precisa ser provisionado com a mesma identidade gerenciada atribuída pelo usuário usada no gerenciador de conexões.

  • Caso já tenha criado o Azure-SSIS IR usando uma autenticação SQL, nesse momento não será possível reconfigurá-lo para usar uma autenticação do Microsoft Entra por meio do PowerShell. No entanto, será possível executar essa ação por meio do portal do Azure/aplicativo ADF.

Observação

Recomendamos que você use o módulo Az PowerShell do Azure para interagir com o Azure. Confira Instalar o Azure PowerShell para começar. Para saber como migrar para o módulo Az PowerShell, confira Migrar o Azure PowerShell do AzureRM para o Az.

Habilitar a autenticação do Microsoft Entra no banco de dados SQL do Azure

O Banco de Dados SQL do Azure oferece suporte à criação de um banco de dados com um usuário do Microsoft Entra. Primeiro, é preciso criar um grupo do Microsoft Entra com a identidade gerenciada atribuída pelo usuário/sistema especificada para o ADF como um membro. Em seguida, você precisa definir um usuário do Microsoft Entra como o administrador do Active Directory para o servidor do Banco de Dados SQL do Azure e, então, se conectar a ele no SSMS (SQL Server Management Studio) usando esse usuário. Por fim, é preciso criar um usuário independente que representa o grupo do Microsoft Entra, de modo que o Azure-SSIS IR possa usar a identidade gerenciada atribuída pelo usuário/sistema especificada para o ADF a fim de criar o SSISDB em seu nome.

Criar um grupo do Microsoft Entra com a identidade gerenciada atribuída pelo usuário/sistema especificada para o ADF como um membro

É possível usar um grupo do Microsoft Entra existente ou criar um usando o Azure AD PowerShell.

  1. Instale o módulo do PowerShell do Azure AD.

  2. Entre usando Connect-AzureAD e execute o cmdlet a seguir para criar um grupo e salvá-lo em uma variável:

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

    Observação

    Os módulos Azure AD e MSOnline PowerShell estão preteridos desde 30 de março de 2024. Para saber mais, leia a atualização de preterição. Após essa data, o suporte a esses módulos se limitará à assistência à migração para o SDK do Microsoft Graph PowerShell e às correções de segurança. Os módulos preteridos continuarão funcionando até 30 de março de 2025.

    Recomendamos migrar para o Microsoft Graph PowerShell para interagir com o Microsoft Entra ID (antigo Azure AD). Para perguntas comuns sobre migração, consulte as Perguntas Frequentes sobre Migração. Observação: As versões 1.0.x do MSOnline poderão sofrer interrupções após 30 de junho de 2024.

    O resultado é semelhante ao exemplo a seguir, que também exibe o valor da variável:

    $Group
    
    ObjectId DisplayName Description
    -------- ----------- -----------
    6de75f3c-8b2f-4bf4-b9f8-78cc60a18050 SSISIrGroup
    
  3. Adicione ao grupo a identidade gerenciada atribuída pelo usuário/sistema especificada para o ADF. É possível seguir o artigo Identidade gerenciada para o Data Factory ou Azure Synapse a fim de obter a ID de Objeto da identidade gerenciada atribuída pelo usuário/sistema especificada para o ADF (por exemplo, 765ad4ab-XXXX-XXXX-XXXX-51ed985819dc, porém não use a ID de Aplicativo para esta finalidade).

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

    Também é possível examinar a associação do grupo posteriormente.

    Get-AzureAdGroupMember -ObjectId $Group.ObjectId
    

Configurar a autenticação do Microsoft Entra para o banco de dados SQL do Azure

É possível Configurar e gerenciar uma autenticação do Microsoft Entra para o Banco de Dados SQL do Azure usando as seguintes etapas:

  1. No portal do Azure, selecione Todos os serviços –>Servidores SQL na barra de navegação esquerda.

  2. Selecione o servidor do Banco de Dados SQL do Azure a ser configurado com autenticação do Microsoft Entra.

  3. Na seção Configurações da folha, selecione Administrador do Active Directory.

  4. Na barra de comandos, selecione Definir administrador.

  5. Selecione uma conta de usuário do Microsoft Entra para ser um administrador do servidor e depois clique em Selecionar.

  6. Na barra de comandos, selecione Salvar.

Criar um usuário independente no Banco de Dados SQL do Azure que representa o grupo do Microsoft Entra

Para a próxima etapa, será preciso obter o SSMS.

  1. Inicie o SSMS.

  2. Na caixa de diálogo Conectar-se ao Servidor, insira o nome do servidor no campo Nome do servidor.

  3. No campo Autenticação, selecione Active Directory – Universal com suporte MFA. Também é possível usar outros dois tipos de autenticação do Active Directory. Confira como Configurar e gerenciar uma autenticação do Microsoft Entra para o Banco de Dados SQL do Azure.

  4. No campo Nome de usuário, insira o nome da conta do Microsoft Entra definida como administrador do servidor, por exemplo, testuser@xxxonline.com.

  5. Selecione Conectar e conclua o processo de entrada.

  6. No Pesquisador de Objetos, expanda a pasta Bancos de Dados ->Bancos de Dados do Sistema.

  7. Clique com o botão direito do mouse no banco de dados mestre e selecione Nova consulta.

  8. Limpe a janela de consulta, insira a o comando T-SQL a seguir e selecione Executar na barra de ferramentas.

    CREATE USER [SSISIrGroup] FROM EXTERNAL PROVIDER
    

    O comando deve ser concluído com êxito, criando um usuário independente para representar o grupo.

  9. Limpe a janela de consulta, insira a o comando T-SQL a seguir e selecione Executar na barra de ferramentas.

    ALTER ROLE dbmanager ADD MEMBER [SSISIrGroup]
    

    O comando deve ser concluído com êxito, concedendo ao usuário independente a capacidade de criar um banco de dados (SSISDB).

  10. Caso o SSISDB foi criado com uma autenticação SQL e você deseja mudar para uma autenticação do Microsoft Entra, de modo que o Azure-SSIS IR possa acessá-lo, primeiro verifique se as etapas usadas acima para conceder permissões ao banco de dados mestre foram concluídas com êxito. Depois, clique com o botão direito do mouse no banco de dados SSISDB e selecione Nova consulta.

    1. Limpe a janela de consulta, insira a o comando T-SQL a seguir e selecione Executar na barra de ferramentas.

      CREATE USER [SSISIrGroup] FROM EXTERNAL PROVIDER
      

      O comando deve ser concluído com êxito, criando um usuário independente para representar o grupo.

    2. Limpe a janela de consulta, insira a o comando T-SQL a seguir e selecione Executar na barra de ferramentas.

      ALTER ROLE db_owner ADD MEMBER [SSISIrGroup]
      

      O comando deve ser concluído com êxito, concedendo ao usuário independente a capacidade de acessar o SSISDB.

Habilitar a autenticação do Microsoft Entra na Instância Gerenciada de SQL do Azure

A Instância Gerenciada de SQL do Azure é compatível com a criação de um banco de dados usando a identidade gerenciada atribuída pelo usuário/sistema especificada diretamente para o ADF. Não é preciso associar a identidade gerenciada atribuída pelo usuário/sistema especificada para o ADF a um grupo do Microsoft Entra nem criar um usuário independente que representa esse grupo na Instância Gerenciada de SQL do Azure.

Configurar a autenticação do Microsoft Entra para a Instância Gerenciada de SQL do Azure

Siga as etapas em Provisionar um administrador do Microsoft Entra na Instância Gerenciada de SQL do Azure.

Adicionar a identidade gerenciada atribuída pelo usuário/sistema especificada para o ADF ou Azure Synapse como um usuário na Instância Gerenciada de SQL do Azure

Para a próxima etapa, será preciso obter o SSMS.

  1. Inicie o SSMS.

  2. Conecte-se à Instância Gerenciada de SQL do Azure usando uma conta do SQL Server que seja um sysadmin. Essa é uma limitação temporária que será removida quando o suporte para as entidades de segurança do servidor do Microsoft Entra (logons) na Instância Gerenciada de SQL do Azure estiver em disponibilidade geral. Caso tente usar uma conta de administrador do Microsoft Entra para criar o logon, você verá o seguinte erro: Msg 15247, Nível 16, Estado 1, Linha 1 – o usuário não tem permissão para executar essa ação.

  3. No Pesquisador de Objetos, expanda a pasta Bancos de Dados ->Bancos de Dados do Sistema.

  4. Clique com o botão direito do mouse no banco de dados mestre e selecione Nova consulta.

  5. Na janela de consulta, execute o script T-SQL a seguir para adicionar a identidade gerenciada atribuída pelo usuário/sistema especificada para o ADF como um usuário.

    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 você usar a identidade gerenciada do sistema para o ADF, o nome da identidade gerenciada deverá ser o nome do ADF. Se você usar uma identidade gerenciada atribuída pelo usuário para o ADF, o nome da identidade gerenciada deverá ser o nome da identidade gerenciada atribuída pelo usuário especificada.

    O comando deverá ser concluído com êxito, concedendo à identidade gerenciada atribuída pelo usuário/sistema especificada para o ADF a capacidade de criar um banco de dados (SSISDB).

  6. Caso o SSISDB foi criado com uma autenticação SQL e você deseja mudar para uma autenticação do Microsoft Entra, de modo que o Azure-SSIS IR possa acessá-lo, primeiro verifique se as etapas usadas acima para conceder permissões ao banco de dados mestre foram concluídas com êxito. Depois, clique com o botão direito do mouse no banco de dados SSISDB e selecione Nova consulta.

    1. Limpe a janela de consulta, insira a o comando T-SQL a seguir e selecione Executar na barra de ferramentas.

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

      O comando deverá ser concluído com êxito, concedendo à identidade gerenciada atribuída pelo usuário/sistema especificada para o ADF a capacidade de acessar o SSISDB.

Provisionar o Azure-SSIS IR no portal do Azure/aplicativo ADF

Ao provisionar o Azure-SSIS IR no portal do Azure ou aplicativo ADF, na página Configurações de implantação, marque a caixa de seleção Criar um SSISDB (catálogo do SSIS) hospedado por um servidor/uma Instância Gerenciada do Banco de Dados SQL do Azure para armazenar projetos, pacotes, ambientes e logs de execução. Além disso, marque a caixa de seleção Usar a autenticação do Microsoft Entra com a identidade gerenciada pelo sistema para o Data Factory ou Usar a autenticação do Microsoft Entra com uma identidade gerenciada atribuída pelo usuário para o Data Factory com o objetivo de escolher o método de autenticação do Microsoft Entra para o Azure-SSIS IR acessar o servidor de banco de dados que hospeda o SSISDB.

Para obter mais informações, confira como Criar o Azure-SSIS IR no ADF.

Provisionar o Azure-SSIS IR com o PowerShell

Para provisionar seu IR do Azure-SSIS com o PowerShell, faça o seguinte:

  1. Instalar o módulo do Azure PowerShell.

  2. No seu script, não defina o parâmetro CatalogAdminCredential. Por exemplo:

    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
    

Executar pacotes SSIS usando uma autenticação do Microsoft Entra com a identidade gerenciada atribuída pelo usuário/sistema especificada para o ADF

Ao executar pacotes SSIS no Azure-SSIS IR, é possível usar uma autenticação do Microsoft Entra com a identidade gerenciada atribuída pelo usuário/sistema especificada para o ADF para se conectar a vários recursos do Azure. No momento, damos suporte à uma autenticação do Microsoft Entra com a identidade gerenciada atribuída pelo usuário/sistema especificada para o ADF nos seguintes gerenciadores de conexões.