Acessar armazenamentos de dados e compartilhamentos de arquivos com a Autenticação do Windows de pacotes SSIS no Azure

APLICA-SE A: Azure Data Factory Azure Synapse Analytics

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!

Você pode usar a Autenticação do Windows para acessar armazenamentos de dados, como SQL Servers, compartilhamentos de arquivos, Arquivos do Azure etc. em pacotes SSIS em execução no seu Azure-SSIS IR (Integration Runtime) no ADF (Azure Data Factory) e no Azure Synapse. Seus armazenamentos de dados podem estar no local, hospedados em VMs (máquinas virtuais) do Azure ou em execução no Azure como serviços gerenciados. Se eles estiverem no local, você precisará vincular o Azure-SSIS IR a uma Rede Virtual (Rede Virtual do Microsoft Azure) conectada à sua rede local; confira Vincular o Azure-SSIS IR a uma Rede Virtual do Microsoft Azure. Há quatro métodos para acessar armazenamentos de dados com a Autenticação do Windows em pacotes SSIS em execução no Azure-SSIS IR:

Método de conexão Escopo efetivo Etapa de configuração Método de acesso em pacotes Número de conjuntos de credenciais e recursos conectados Tipo de recursos conectados
Como configurar um contexto de execução no nível da atividade Por atividade Executar pacote do SSIS Configure a propriedade Autenticação do Windows para definir um contexto de "Execução/Executar como" ao executar o pacotes SSIS como atividades Executar pacote SSIS em pipelines do ADF.

Confira mais informações em Configurar a atividade Executar pacote SSIS.
Acesse recursos diretamente em pacotes. Por exemplo, use o caminho UNC para acessar compartilhamentos de arquivos ou Arquivos do Azure: \\YourFileShareServerName\YourFolderName ou \\YourAzureStorageAccountName.file.core.windows.net\YourFolderName Suporte a apenas um conjunto de credenciais para todos os recursos conectados - Compartilhamentos de arquivos no local/VMs do Azure

- Arquivos do Azure; confira Usar um compartilhamento de arquivos do Azure

– SQL Servers no local/VMs Azure com a autenticação do Windows

– Outros recursos com Autenticação do Windows
Como configurar um contexto de execução de nível de catálogo Por Azure-SSIS IR, mas será substituído quando houver a configuração de um contexto de execução no nível da atividade (veja acima) Execute o procedimento armazenado catalog.set_execution_credential do SSISDB para configurar um contexto de "Execução/Executar como".

Para saber mais, confira o restante deste artigo abaixo.
Acesse recursos diretamente em pacotes. Por exemplo, use o caminho UNC para acessar compartilhamentos de arquivos ou Arquivos do Azure: \\YourFileShareServerName\YourFolderName ou \\YourAzureStorageAccountName.file.core.windows.net\YourFolderName Suporte a apenas um conjunto de credenciais para todos os recursos conectados - Compartilhamentos de arquivos no local/VMs do Azure

- Arquivos do Azure; confira Usar um compartilhamento de arquivos do Azure

– SQL Servers no local/VMs Azure com a autenticação do Windows

– Outros recursos com Autenticação do Windows
Credenciais persistentes por meio do comando cmdkey Por Azure-SSIS IR, mas será substituído quando houver a configuração de um contexto de execução no nível da atividade/catálogo (veja acima) Execute o comando cmdkey em um script de instalação personalizada (main.cmd) ao provisionar o Azure-SSIS IR, por exemplo, se você usar compartilhamentos de arquivos, Arquivos do Azure ou SQL Server:

cmdkey /add:YourFileShareServerName /user:YourDomainName\YourUsername /pass:YourPassword,

cmdkey /add:YourAzureStorageAccountName.file.core.windows.net /user:azure\YourAzureStorageAccountName /pass:YourAccessKey, ou

cmdkey /add:YourSQLServerFullyQualifiedDomainNameOrIPAddress:YorSQLServerPort /user:YourDomainName\YourUsername /pass:YourPassword.

Para saber mais, confira Personalizar a instalação para o Azure-SSIS IR.
Acesse recursos diretamente em pacotes. Por exemplo, use o caminho UNC para acessar compartilhamentos de arquivos ou Arquivos do Azure: \\YourFileShareServerName\YourFolderName ou \\YourAzureStorageAccountName.file.core.windows.net\YourFolderName Suporte a vários conjuntos de credenciais para diferentes recursos conectados - Compartilhamentos de arquivos no local/VMs do Azure

- Arquivos do Azure; confira Usar um compartilhamento de arquivos do Azure

– SQL Servers no local/VMs Azure com a autenticação do Windows

– Outros recursos com Autenticação do Windows
Montagem de unidades no tempo de execução do pacote (não persistente) Por pacote Execute o comando net use em Executar Processo de Tarefa, que será adicionado ao início do fluxo de controle em seus pacotes, por exemplo, net use D: \\YourFileShareServerName\YourFolderName Acessar compartilhamentos de arquivos por meio de unidades mapeadas Suporte a várias unidades para compartilhamentos de arquivos diferentes - Compartilhamentos de arquivos no local/VMs do Azure

- Arquivos do Azure; confira Usar um compartilhamento de arquivos do Azure

Aviso

Se você não usar nenhum dos métodos acima para acessar armazenamentos de dados com a autenticação do Windows, os pacotes que dependem da autenticação do Windows não poderão acessá-los e falharão no tempo de execução.

O restante deste artigo descreve como configurar o catálogo do SSIS (SSISDB) hospedado no Banco de Dados SQL/Instância Gerenciada de SQL para executar pacotes no Azure-SSIS IR que usam a autenticação do Windows para acessar armazenamentos de dados.

Você só pode usar um conjunto de credenciais

Ao usar a autenticação do Windows em um pacote SSIS, você pode usar apenas um conjunto de credenciais. As credenciais de domínio que você fornece ao seguir as etapas neste artigo se aplicam a todas as execuções de pacote, interativas ou agendadas, no Azure-SSIS IR até você alterá-las ou removê-las. Se o pacote precisar se conectar a vários armazenamentos de dados com diferentes conjuntos de credenciais, considere os métodos alternativos acima.

Forneça credenciais de domínio para Autenticação do Windows

Para fornecer credenciais de domínio que permitem que os pacotes usam a autenticação do Windows para acessar armazenamentos de dados locais, faça o seguinte:

  1. Com o SSMS (SQL Server Management Studio) ou outra ferramenta, conecte-se ao Banco de Dados SQL/Instância Gerenciada de SQL que hospeda o SSISDB. Confira mais informações em Conectar ao SSISDB no Azure.

  2. Com o SSISDB como o banco de dados atual, abra uma janela de consulta.

  3. Execute o procedimento armazenado a seguir e forneça credenciais de domínio apropriadas:

    catalog.set_execution_credential @user='<your user name>', @domain='<your domain name>', @password='<your password>'
    
  4. Executar seus pacotes SSIS. Os pacotes usam as credenciais que você forneceu para acessar armazenamentos de dados no local com a autenticação do Windows.

Exibir credenciais de domínio

Para exibir as credenciais de domínio ativas, faça o seguinte:

  1. Com o SSMS ou outra ferramenta, conecte-se ao Banco de Dados SQL/Instância Gerenciada de SQL que hospeda o SSISDB. Confira mais informações em Conectar ao SSISDB no Azure.

  2. Com o SSISDB como o banco de dados atual, abra uma janela de consulta.

  3. Execute o seguinte procedimento armazenado e verifique a saída:

    SELECT * 
    FROM catalog.master_properties
    WHERE property_name = 'EXECUTION_DOMAIN' OR property_name = 'EXECUTION_USER'
    

Limpar credenciais de domínio

Para limpar e remover as credenciais que você forneceu conforme descrito neste artigo, faça o seguinte:

  1. Com o SSMS ou outra ferramenta, conecte-se ao Banco de Dados SQL/Instância Gerenciada de SQL que hospeda o SSISDB. Confira mais informações em Conectar ao SSISDB no Azure.

  2. Com o SSISDB como o banco de dados atual, abra uma janela de consulta.

  3. Execute o seguinte procedimento armazenado:

    catalog.set_execution_credential @user='', @domain='', @password=''
    

Conectar a um SQL Server local

Para verificar se você pode se conectar a um SQL Server local, faça o seguinte:

  1. Para executar este teste, localize um computador não ingressado em domínio.

  2. No computador não ingressado no domínio, execute o seguinte comando para iniciar o SSMS com as credenciais de domínio que você deseja usar:

    runas.exe /netonly /user:<domain>\<username> SSMS.exe
    
  3. No SSMS, verifique se você pode se conectar ao SQL Server local.

Pré-requisitos

Para acessar um SQL Server local nos pacotes em execução no Azure, faça o seguinte:

  1. No SQL Server Configuration Manager, habilite o protocolo TCP/IP.

  2. Permita o acesso pelo firewall do Windows. Confira mais informações em Configurar o firewall do Windows para acessar o SQL Server.

  3. Vincule seu Azure-SSIS IR a uma Rede Virtual do Microsoft Azure conectada ao SQL Server local. Para obter mais informações, confira Unir o Azure-SSIS IR a uma Rede Virtual do Microsoft Azure.

  4. Use o procedimento armazenado catalog.set_execution_credential do SSISDB para fornecer credenciais, conforme descrito neste artigo.

Conectar-se a um compartilhamento de arquivos no local

Para verificar se você pode se conectar a um compartilhamento de arquivos local, faça o seguinte:

  1. Para executar este teste, localize um computador não ingressado em domínio.

  2. No computador não ingressado no domínio, execute o comando a seguir. Esses comandos abrem uma janela de prompt de comando com as credenciais de domínio que você deseja usar e, em seguida, testam a conectividade ao compartilhamento de arquivos local obtendo uma listagem de diretórios.

    runas.exe /netonly /user:<domain>\<username> cmd.exe
    dir \\fileshare
    
  3. Verifique se a listagem de diretórios é retornada para o compartilhamento de arquivos local.

Pré-requisitos

Para acessar um compartilhamento de arquivo local nos pacotes em execução no Azure, faça o seguinte:

  1. Permita o acesso pelo firewall do Windows.

  2. Vincule seu Azure-SSIS IR a uma Rede Virtual do Microsoft Azure conectada ao compartilhamento de arquivo local. Para obter mais informações, confira Unir o Azure-SSIS IR a uma Rede Virtual do Microsoft Azure.

  3. Use o procedimento armazenado catalog.set_execution_credential do SSISDB para fornecer credenciais, conforme descrito neste artigo.

Conectar-se a um compartilhamento de arquivos em uma VM do Azure

Para acessar um compartilhamento de arquivo na VM do Azure nos pacotes em execução no Azure, faça o seguinte:

  1. Com o SSMS ou outra ferramenta, conecte-se ao Banco de Dados SQL/Instância Gerenciada de SQL que hospeda o SSISDB. Confira mais informações em Conectar ao SSISDB no Azure.

  2. Com o SSISDB como o banco de dados atual, abra uma janela de consulta.

  3. Execute o procedimento armazenado a seguir e forneça credenciais de domínio apropriadas:

    catalog.set_execution_credential @domain = N'.', @user = N'username of local account on Azure virtual machine', @password = N'password'
    

Conectar-se a um compartilhamento de arquivos nos Arquivos do Azure

Para obter mais informações sobre o Arquivos do Azure, consulte Arquivos do Azure.

Para acessar um compartilhamento de arquivo nos Arquivos do Azure nos pacotes em execução no Azure, faça o seguinte:

  1. Com o SSMS ou outra ferramenta, conecte-se ao Banco de Dados SQL/Instância Gerenciada de SQL que hospeda o SSISDB. Confira mais informações em Conectar ao SSISDB no Azure.

  2. Com o SSISDB como o banco de dados atual, abra uma janela de consulta.

  3. Execute o procedimento armazenado a seguir e forneça credenciais de domínio apropriadas:

    catalog.set_execution_credential @domain = N'Azure', @user = N'<storage-account-name>', @password = N'<storage-account-key>'