Accéder à des magasins de données et à des partages de fichiers avec l’authentification Windows à partir de packages SSIS sur Azure

S’APPLIQUE À : Azure Data Factory Azure Synapse Analytics

Conseil

Essayez Data Factory dans Microsoft Fabric, une solution d’analyse tout-en-un pour les entreprises. Microsoft Fabric couvre tous les aspects, du déplacement des données à la science des données, en passant par l’analyse en temps réel, l’aide à la décision et la création de rapports. Découvrez comment démarrer un nouvel essai gratuitement !

Vous pouvez utiliser l’authentification Windows pour accéder à des magasins de données, par exemple des serveurs SQL, des partages de fichiers, Azure Files, etc. à partir de packages SSIS qui s’exécutent sur Azure-SSIS Integration Runtime (IR) dans Azure Data Factory (ADF) et Azure Synapse. Il peut s’agir de magasins de données sur site, hébergés sur les Machines virtuelles Azure ou qui s’exécutent dans Azure en tant que services gérés. S’ils sont en local, vous devez joindre votre runtime Azure-SSIS IR à un Réseau virtuel (Réseau virtuel Microsoft Azure) connecté à votre réseau local : voir Joindre un runtime Azure-SSIS IR à un Réseau virtuel Microsoft Azure. Il existe quatre moyens d’accéder à des magasins de données avec l’authentification Windows à partir de packages SSIS qui s’exécutent sur un runtime Azure-SSIS IR :

Méthode de connexion Portée effective Étape de configuration Méthode d’accès dans des packages Nombre de jeux d’informations d’identification et ressources connectées Type de ressources connectées
Configurer un contexte d’exécution au niveau de l’activité Selon l’activité Exécuter un package SSIS Configurez la propriété Authentification Windows pour définir un contexte « Exécution/Exécuter en tant que » pour l’exécution de packages SSIS en tant qu’activités Exécuter un package SSIS dans des pipelines ADF.

Pour plus d’informations, voir Configurer l’activité Exécuter le package SSIS.
Accédez aux ressources directement dans les packages. Par exemple, utilisez un chemin d’accès UNC pour accéder aux partages de fichiers ou au service Azure Files : \\YourFileShareServerName\YourFolderName ou \\YourAzureStorageAccountName.file.core.windows.net\YourFolderName. Prise en charge d’un seul jeu d’informations d’identification pour toutes les ressources connectées - Partages de fichiers localement/sur des machines virtuelles Azure

- Azure Files, voir Utiliser un partage de fichiers Azure

- Serveurs SQL sur site/Machines virtuelles Azure avec authentification Windows

- Autres ressources avec authentification Windows
Configurer un contexte d’exécution au niveau du catalogue Selon Azure-SSIS IR, mais est remplacé lors la configuration d’un contexte d’exécution au niveau de l’activité (voir plus haut) Exécutez la procédure stockée catalog.set_execution_credential SSISDB pour définir un contexte « Exécution/Exécuter en tant que ».

Pour plus d’informations, voir la suite de cet article.
Accédez aux ressources directement dans les packages. Par exemple, utilisez un chemin d’accès UNC pour accéder aux partages de fichiers ou au service Azure Files : \\YourFileShareServerName\YourFolderName ou \\YourAzureStorageAccountName.file.core.windows.net\YourFolderName. Prise en charge d’un seul jeu d’informations d’identification pour toutes les ressources connectées - Partages de fichiers localement/sur des machines virtuelles Azure

- Azure Files, voir Utiliser un partage de fichiers Azure

- Serveurs SQL sur site/Machines virtuelles Azure avec authentification Windows

- Autres ressources avec authentification Windows
Conserver les informations d’identification avec la commande cmdkey Selon Azure-SSIS IR, mais est remplacé lors la configuration d’un contexte d’exécution au niveau de l’activité ou du catalogue (voir plus haut) Exécutez la commande cmdkey dans un script d’installation personnalisé (main.cmd) lors de l’approvisionnement de votre Azure-SSIS IR, par exemple, si vous utilisez des partages de fichiers, Azure Files 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.

Pour plus d’informations, voir Personnaliser l’installation du runtime Azure-SSIS IR.
Accédez aux ressources directement dans les packages. Par exemple, utilisez un chemin d’accès UNC pour accéder aux partages de fichiers ou au service Azure Files : \\YourFileShareServerName\YourFolderName ou \\YourAzureStorageAccountName.file.core.windows.net\YourFolderName. Prise en charge de plusieurs jeux d’informations d’identification pour différentes ressources connectées - Partages de fichiers localement/sur des machines virtuelles Azure

- Azure Files, voir Utiliser un partage de fichiers Azure

- Serveurs SQL sur site/Machines virtuelles Azure avec authentification Windows

- Autres ressources avec authentification Windows
Monter des lecteurs à l’exécution du package (non persistant) Par package Exécutez la commande net use dans la tâche Exécuter le processus ajoutée au début du flux de contrôle de vos packages, par exemple, net use D: \\YourFileShareServerName\YourFolderName. Accédez aux partages de fichiers par le biais de lecteurs mappés. Prise en charge de plusieurs lecteurs pour différents partages de fichiers - Partages de fichiers localement/sur des machines virtuelles Azure

- Azure Files, voir Utiliser un partage de fichiers Azure

Avertissement

Si vous n’utilisez aucune des méthodes ci-dessus pour accéder à des magasins de données avec l’Authentification Windows, les packages qui dépendent de l’Authentification Windows ne peuvent pas y accéder et échouent au moment de l’exécution.

La suite de cet article explique comment configurer le catalogue SSIS (SSISDB) hébergé dans une base de données SQL/une instance managée SQL pour exécuter des packages sur le runtime d’intégration Azure-SSIS utilisant l’authentification Windows pour accéder aux magasins de données.

Vous ne pouvez utiliser qu’un seul jeu d’informations d’identification

Si vous utilisez l’authentification Windows dans un package SSIS, vous ne pouvez recourir qu’à un seul jeu d’informations d’identification. Tant que vous ne les changez et ne les supprimez pas, les informations d’identification de domaine que vous indiquez en suivant les étapes de cet article s’appliquent à toutes les exécutions de packages, interactives ou planifiées, sur votre runtime Azure-SSIS IR. Si votre package doit se connecter à plusieurs magasins de données avec différents jeux d’informations d’identification, tournez-vous vers les autres méthodes décrites plus haut.

Fournir des informations d’identification de domaine pour l’authentification Windows

Suivez les étapes ci-dessous pour fournir des informations d’identification de domaine permettant aux packages d’utiliser l’authentification Windows afin d’accéder à des magasins de données sur site :

  1. Avec SSMS (SQL Server Management Studio) ou un autre outil, connectez-vous à la base de données SQL/l’instance managée SQL qui héberge SSISDB. Pour plus d’informations, voir Se connecter à SSISDB sur Azure.

  2. La base de données SSISDB étant la base de données active, ouvrez une fenêtre de requête.

  3. Exécutez la procédure stockée suivante en indiquant les informations d’identification de domaine nécessaires :

    catalog.set_execution_credential @user='<your user name>', @domain='<your domain name>', @password='<your password>'
    
  4. Exécutez vos packages SSIS. Les packages utilisent les informations d’identification fournies pour accéder aux magasins de données sur site avec l’Authentification Windows.

Afficher les informations d’identification de domaine

Pour afficher les informations d’identification de domaine actives, effectuez les actions suivantes :

  1. Avec SSMS ou un autre outil, connectez-vous à la base de données SQL/l’instance managée SQL qui héberge SSISDB. Pour plus d’informations, voir Se connecter à SSISDB sur Azure.

  2. La base de données SSISDB étant la base de données active, ouvrez une fenêtre de requête.

  3. Exécutez la procédure stockée suivante et vérifiez la sortie :

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

Effacer les informations d’identification de domaine

Pour effacer et supprimer les informations d’identification que vous avez fournies, comme indiqué dans cet article, effectuez les actions suivantes :

  1. Avec SSMS ou un autre outil, connectez-vous à la base de données SQL/l’instance managée SQL qui héberge SSISDB. Pour plus d’informations, voir Se connecter à SSISDB sur Azure.

  2. La base de données SSISDB étant la base de données active, ouvrez une fenêtre de requête.

  3. Exécutez la procédure stockée suivante :

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

Se connecter à un serveur SQL Server sur site

Suivez les étapes ci-dessous pour vérifier que vous pouvez vous connecter à un serveur SQL Server sur site :

  1. Pour exécuter ce test, recherchez un ordinateur non membre d’un domaine.

  2. Sur l’ordinateur non membre d’un domaine, exécutez la commande suivante pour lancer SSMS avec les informations d’identification de domaine souhaitées :

    runas.exe /netonly /user:<domain>\<username> SSMS.exe
    
  3. À partir de SSMS, vérifiez que vous pouvez vous connecter au serveur SQL Server sur site.

Prérequis

Suivez les étapes ci-dessous pour accéder à un serveur SQL Server sur site à partir de packages qui s’exécutent sur Azure :

  1. Dans le Gestionnaire de configuration SQL Server, activez le protocole TCP/IP.

  2. Autorisez l’accès à travers le Pare-feu Windows. Pour plus d’informations, voir Configurer le Pare-feu Windows pour accéder à SQL Server.

  3. Joignez votre runtime Azure-SSIS IR à un Réseau virtuel Microsoft Azure connecté au SQL Server local. Pour plus d’informations, consultez Joindre le runtime Azure-SSIS IR à un Réseau virtuel Microsoft Azure.

  4. Utilisez la procédure stockée catalog.set_execution_credential SSISDB pour indiquer les informations d’identification comme le décrit cet article.

Se connecter à un partage de fichiers sur site

Suivez les étapes ci-dessous pour vérifier que vous pouvez vous connecter à un partage de fichiers sur site :

  1. Pour exécuter ce test, recherchez un ordinateur non membre d’un domaine.

  2. Sur l’ordinateur non membre d’un domaine, exécutez les commandes suivantes. Elles ouvrent une fenêtre d’invite de commandes avec les informations d’identification de domaine à utiliser, puis testent la connectivité au partage de fichiers sur site en récupérant une liste de répertoires.

    runas.exe /netonly /user:<domain>\<username> cmd.exe
    dir \\fileshare
    
  3. Vérifiez que la liste de répertoires est retournée pour le partage de fichiers sur site.

Prérequis

Suivez les étapes ci-dessous pour accéder à un partage de fichiers sur site à partir de packages qui s’exécutent sur Azure :

  1. Autorisez l’accès à travers le Pare-feu Windows.

  2. Joignez votre runtime Azure-SSIS IR à un Réseau virtuel Microsoft Azure connecté au partage de fichiers local. Pour plus d’informations, consultez Joindre le runtime Azure-SSIS IR à un Réseau virtuel Microsoft Azure.

  3. Utilisez la procédure stockée catalog.set_execution_credential SSISDB pour indiquer les informations d’identification comme le décrit cet article.

Se connecter à un partage de fichiers sur les Machines virtuelles Azure

Suivez les étapes ci-dessous pour accéder à un partage de fichiers sur les Machines virtuelles Azure à partir de packages qui s’exécutent sur Azure :

  1. Avec SSMS ou un autre outil, connectez-vous à la base de données SQL/l’instance managée SQL qui héberge SSISDB. Pour plus d’informations, voir Se connecter à SSISDB sur Azure.

  2. La base de données SSISDB étant la base de données active, ouvrez une fenêtre de requête.

  3. Exécutez la procédure stockée suivante en indiquant les informations d’identification de domaine nécessaires :

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

Se connecter à un partage de fichiers dans Azure Files

Pour plus d’informations sur Azure Files, consultez Azure Files.

Suivez les étapes ci-dessous pour accéder à un partage de fichiers sur Azure Files à partir de packages qui s’exécutent sur Azure :

  1. Avec SSMS ou un autre outil, connectez-vous à la base de données SQL/l’instance managée SQL qui héberge SSISDB. Pour plus d’informations, voir Se connecter à SSISDB sur Azure.

  2. La base de données SSISDB étant la base de données active, ouvrez une fenêtre de requête.

  3. Exécutez la procédure stockée suivante en indiquant les informations d’identification de domaine nécessaires :

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