Compartilhar via


Gerenciador de conexões ADO.NET

Aplica-se a:SQL Server SSIS Integration Runtime no Azure Data Factory

Um gerenciador de conexões ADO.NET permite que um pacote acesse fontes de dados usando um provedor .NET. Normalmente, você usa esse gerenciador de conexões para acessar fontes de dados, como Microsoft SQL Server. Você também pode acessar fontes de dados expostas por meio de OLE DB e XML em tarefas personalizadas escritas em código gerenciado usando uma linguagem, como C#.

Quando você adiciona um gerenciador de conexões ADO.NET a um pacote, SQL Server Integration Services cria um gerenciador de conexões que é resolvido como uma conexão ADO.NET em runtime. Ele define as propriedades do gerenciador de conexões e adiciona esse gerenciador à coleção de Conexões do pacote.

A propriedade ConnectionManagerType do gerenciador de conexões é definida como ADO.NET. O valor de ConnectionManagerType está qualificado para incluir o nome do provedor .NET usado pelo gerenciador de conexões.

Observação

O Microsoft Entra ID era anteriormente conhecido como Azure Active Directory (Azure AD).

Solução de problemas do gerenciador de conexões ADO.NET

Você pode registrar as chamadas que o gerenciador de conexões ADO.NET faz a provedores de dados externos. É possível solucionar problemas de conexões que o gerenciador de conexões ADO.NET cria para fontes de dados externas. Para registrar as chamadas que o gerenciador de conexões ADO.NET faz aos provedores de dados externos, habilite o registro do pacote e selecione o evento Diagnóstico no nível de pacote. Para obter mais informações, consulte Solucionando problemas de ferramentas para execução de pacotes.

Ao serem lidos por um gerenciador de conexões ADO.NET, certos tipos de dados de data do SQL Server geram os resultados mostrados na tabela a seguir.

Tipo de dados do SQL Server Resultado
time, datetimeoffset O pacote apresentará erros, a menos que use comandos com parâmetros SQL. Para utilizar comandos SQL parametrizados, use a tarefa Executar SQL em seu pacote. Para obter mais informações, consulte Executar Tarefa SQL e Executar Tarefa SQL.
datetime2 O gerenciador de conexões ADO.NET trunca o valor de milissegundo.

Observação

Para obter mais informações sobre os tipos de dados do SQL Server e como eles são mapeados para tipos de dados do Integration Services, consulte tipos de dados e tipos de dados do Integration Services.

Configuração do gerenciador de conexões ADO.NET

Você pode definir propriedades pelo Designer do SSIS ou de maneira programática.

  • Forneça uma cadeia de conexão específica configurada para atender aos requisitos do provedor .NET selecionado.

  • Dependendo do provedor, inclua o nome da fonte de dados à qual efetuar a conexão.

  • Forneça credenciais de segurança apropriadas para o provedor selecionado.

  • Indique se a conexão criada a partir do gerenciador de conexões será retida em runtime.

Muitas das opções de configuração do gerenciador de conexões ADO.NET dependem do provedor .NET que o gerenciador de conexões usa.

Para obter informações sobre como configurar um gerenciador de conexões programaticamente, consulte ConnectionManager e adicione conexões programaticamente.

Configurar Gerenciador de Conexões ADO.NET

Use a caixa de diálogo Configurar gerenciador de conexões ADO.NET para adicionar uma conexão a uma fonte de dados que pode ser acessada usando um provedor de dados .NET Framework. Por exemplo, um provedor desse tipo é o SqlClient. O gerenciador de conexões pode usar uma conexão existente ou você pode criar uma nova.

Para saber mais sobre o gerenciador de conexões ADO.NET, consulte ADO.NET Connection Manager.

Opções

Opção Descrição
Conexões de dados Selecione uma conexão de dados ADO.NET existente na lista.
Propriedades de conexão de dados Exiba as propriedades e os valores da conexão de dados ADO.NET selecionada.
Novo Crie uma conexão de dados ADO.NET utilizando a caixa de diálogo do Gerenciador de Conexões .
Delete (excluir) Selecione uma conexão e selecione Excluir para excluí-la.

Usar o Provedor de Dados do Microsoft SqlClient

O Provedor de Dados do Microsoft SqlClient tem suporte no SQL Server 2025 (17.x) e versões posteriores. Para o SQL Server 2022 (16.x) e versões anteriores, use o Gerenciador de Conexões Oledb se precisar de autenticação baseada em ID do Microsoft Entra ou msi.

Para o design do pacote, use SQL Server Integration Services Projects 2022 ou acima.

Para obter diretrizes sobre como configurar os modos de autenticação do Microsoft Entra, consulte Conectar-se ao SQL do Azure com a autenticação do Microsoft Entra e o SqlClient.

Identidades gerenciadas para autenticação de recursos do Azure

Ao executar pacotes do SSIS no Azure-SSIS Integration Runtime (IR) no Azure Data Factory (ADF), você pode usar a autenticação do Microsoft Entra com a identidade gerenciada ado ADF para acessar o Banco de Dados SQL do Azure ou a Instância Gerenciada de SQL. Seu Azure-SSIS IR pode acessar e copiar dados e copiá-los de e para o banco de dados usando essa identidade gerenciada.

Observação

Quando você realiza a autenticação com uma identidade gerenciada atribuída pelo usuário, o SSIS Integration Runtime precisa ser habilitado com a mesma identidade. Para obter mais informações, confira Habilitar a autenticação do Microsoft Entra para Azure-SSIS Integration Runtime.

Para habilitar o ADF para acessar oo Banco de Dados SQL do Azure usando a identidade gerenciada, siga essas etapas:

  1. Provisione um administrador do Microsoft Entra para seu servidor do Banco de Dados SQL do Azure no portal do Azure, caso ainda não tenha feito isso. O administrador do Microsoft Entra pode ser um usuário ou um grupo. Se você designar um grupo como administrador, e a identidade gerenciada do seu ADF for um membro daquele grupo, pode ignorar e pular as etapas 2 e 3. O administrador terá acesso completo ao seu servidor lógico.

  2. Crie um usuário de banco de dados independente para representar a identidade gerenciada atribuída ao ADF. Conecte-se ao banco de dados de onde ou para onde você deseja copiar dados usando o SQL Server Management Studio (SSMS), com um usuário do Microsoft Entra que tenha pelo menos ALTER ANY USER permissão. Execute a seguinte instrução T-SQL:

    CREATE USER [your managed identity name] FROM EXTERNAL PROVIDER;
    

    Se você usar a identidade gerenciada atribuída pelo sistema para o ADF, o nome da identidade gerenciada será o nome do ADF. Se você usar uma identidade gerenciada atribuída pelo usuário para o ADF, o nome da identidade gerenciada será nome da identidade gerenciada.

  3. Conceda à identidade gerenciada do ADF as permissões necessárias, como você normalmente faz para os usuários SQL. Saiba mais sobre as funções adequadas em Funções do nível de banco de dados. Execute a seguinte instrução T-SQL. Para mais opções, confira este artigo.

    EXECUTE sp_addrolemember [role name], [your managed identity name];
    

Para usar a identidade gerenciada atribuída ao ADF a fim de acessar a Instância Gerenciada de SQL do Azure, siga estas etapas:

  1. Provisione um administrador do Microsoft Entra para sua Instância Gerenciada de SQL do Azure no portal do Azure, caso ainda não tenha feito isso. O administrador do Microsoft Entra pode ser um usuário ou um grupo. Se você designar um grupo como administrador e sua identidade gerenciada for membro desse grupo, poderá ignorar as etapas 2 a 4. O administrador terá acesso completo à sua Instância gerenciada.

  2. Crie um logon atribuído à identidade gerenciada do ADF. No SSMS, conecte-se à instância gerenciada usando uma conta com permissões sysadmin ou o administrador do Microsoft Entra. No banco de dados master, execute a seguinte instrução T-SQL:

    CREATE LOGIN [your managed identity name] FROM EXTERNAL PROVIDER;
    

    Se você usar a identidade gerenciada atribuída pelo sistema para o ADF, o nome da identidade gerenciada será o nome do ADF. Se você usar uma identidade gerenciada atribuída pelo usuário para o ADF, o nome da identidade gerenciada será nome da identidade gerenciada.

  3. Crie um usuário de banco de dados independente para representar a identidade gerenciada para o ADF. Conecte-se ao banco de dados do qual você deseja copiar dados usando o SSMS e execute a seguinte instrução T-SQL:

    CREATE USER [your managed identity name] FROM EXTERNAL PROVIDER;
    
  4. Conceda à identidade gerenciada do ADF as permissões necessárias, como você normalmente faz para os usuários SQL. Execute a seguinte instrução T-SQL. Para mais opções, confira este artigo.

    ALTER ROLE [role name, for example, db_owner] ADD MEMBER [your managed identity name];
    

Por fim, você pode configurard a autenticação do Microsoft Entra com a identidade gerenciada do seu ADF no gerenciador de conexões ADO.NET. Veja a seguir as opções para fazer isso:

  • Configurar em tempo de design. No Designer do SSIS, clique com o botão direito do mouse em seu gerenciador de conexões ADO.NET e selecione Propriedades. Atualize a propriedade ConnectUsingManagedIdentity para True.

    Observação

    A propriedade do gerenciador de conexões ConnectUsingManagedIdentity não entra em vigor quando você executa o pacote no Designer do SSIS ou no SQL Server, indicando que a autenticação do Microsoft Entra com a identidade gerenciada do ADF não funciona.

  • Configurar em tempo de execução. Ao executar seu pacote por meio do pipeline do SSMS ou do ADF, localize o gerenciador de conexões ADO.NET e atualize sua propriedade ConnectUsingManagedIdentity para True.

    Observação

    No Azure-SSIS IR, todos os outros métodos de autenticação (por exemplo, segurança e senha integradas) pré-configurados em seu gerenciador de conexões ADO.NET são substituídos ao usar a autenticação do Microsoft Entra com a identidade gerenciada do ADF.

Para configurar a autenticação do Microsoft Entra com a identidade gerenciada do ADF em pacotes existentes, a maneira preferencial é recompilar seu projeto SSIS com o Designer do SSIS mais recente pelo menos uma vez. Reimplante seu projeto do SSIS para ser executado no Azure-SSIS IR, para que a nova propriedade do gerenciador de conexões ConnectUsingManagedIdentity seja automaticamente adicionada a todos os gerenciadores de conexões ADO.NET em seu projeto. Como alternativa, é possível usar diretamente a substituição de propriedade com o caminho de propriedade \Package.Connections[{o nome do seu gerenciador de conexões}].Properties[ConnectUsingManagedIdentity] atribuído a True no tempo de execução.