Question

Dans SQL Server 2005, est-il possible de planifier l'exécution d'un package SSIS autrement que par le compte de service de l'agent SQL?

J'ai un package SSIS qui établit une connexion avec une base de données et exécute une procédure stockée. Mon critère est que je ne spécifierai pas de noms d'utilisateur / mots de passe dans un package ou une configuration de package, je souhaite donc utiliser l'authentification intégrée.

Le problème est que, par défaut, une étape d'un travail s'exécute en tant que compte de service d'agent SQL et notre groupe de serveurs ne souhaite pas accorder à ce compte les droits d'exécution sur les procédures stockées que mon package va exécuter. Nous essayons donc de trouver un moyen de spécifier un compte différent dans l'étape, afin que le package s'exécute dans un contexte différent. Est-ce possible?

Était-ce utile?

La solution

Si vous souhaitez exécuter le package SSIS à partir de travaux SQL Agent, vous pouvez créer un proxy. Pour plus d'informations, consultez ici .

Autres conseils

Si vous avez accès à Agent SQL Server via SQL Server Management Studio, voici les étapes à suivre pour créer un travail à l'aide de l'interface utilisateur graphique. Les étapes montrent comment créer un travail SQL pour exécuter SSIS à l'aide du compte de service de l'agent SQL et créer un proxy à exécuter sous un autre en utilisant des informations d'identification différentes.

  1. Accédez à SQL Server Management Studio. Développez Agent SQL Server et cliquez avec le bouton droit de la souris sur Travaux, puis sélectionnez Nouveau travail ... , comme indiqué dans la capture d'écran n ° 1 .

  2. Indiquez un nom et le propriétaire par défaut sera le compte qui crée le travail, mais vous pouvez le modifier en fonction de vos besoins. Attribuez une catégorie si vous le souhaitez et fournissez également une description. Reportez-vous à la capture d'écran 2 .

  3. Dans la section Étapes, cliquez sur Nouveau ... comme indiqué dans la capture d'écran n ° 3 .

  4. Dans la boîte de dialogue Nouvelle étape de travail, indiquez un nom d'étape. Sélectionnez Package de services d'intégration SQL Server dans Type. Cette étape sera exécutée sous Compte de service de l'agent SQL par défaut. Sélectionnez la source du paquet en tant que Système de fichiers et naviguez jusqu'au chemin du paquet en cliquant sur points de suspension. Cela va peupler le chemin du paquet. Reportez-vous à la capture d'écran 4 . Si vous ne souhaitez pas que l'étape s'exécute sous le compte de service de l'agent SQL , reportez-vous aux étapes # 8 - 9 pour savoir comment utiliser un compte différent.

  5. Si vous disposez d'un fichier de configuration SSIS (.dtsConfig) pour le package, cliquez sur l'onglet Configurations et ajoutez le fichier de configuration comme indiqué dans la capture d'écran n ° 5 .

  6. Cliquez sur OK. Le package de l'étape 1 est présenté à la capture d'écran n ° 6 . De même, vous pouvez créer différentes étapes.

  7. Une fois le travail créé, vous pouvez cliquer dessus avec le bouton droit de la souris et sélectionner Script Job as - > CRÉER Pour - > Nouvelle fenêtre de l'éditeur de requêtes permettant de générer le script, comme indiqué dans la capture d'écran n ° 7 .

  8. Pour exécuter l'étape SSIS sous un compte différent, dans Management Studio, accédez à Sécurité - > faites un clic droit sur Cedentials - > sélectionnez New Credential ... comme indiqué dans la capture d'écran # 8 .

  9. Dans la boîte de dialogue New Credential , indiquez le nom des informations d'identification, le compte Windows et le mot de passe sous lesquels vous souhaitez exécuter les étapes SSIS dans les travaux SQL. Reportez-vous à la capture d'écran 9 . Les informations d'identification seront créées comme indiqué dans la capture d'écran n ° 10 .

  10. Ensuite, nous devons créer un proxy. Dans Management Studio, accédez à Agent SQL Server - > Proxies - > cliquez avec le bouton droit sur Exécution du package SSIS - > sélectionnez Nouveau proxy ... comme indiqué dans la capture d'écran n ° 11 .

  11. Dans la fenêtre Nouveau compte proxy, indiquez un nom de proxy, sélectionnez les informations d'identification nouvellement créées, fournissez une description, puis sélectionnez Package SQL Server Integration Services, comme indiqué dans la capture d'écran n ° 12 . Le compte proxy doit être créé comme indiqué dans la capture d'écran # 13 .

  12. Maintenant, si vous revenez à l'étape du travail SQL, le compte Proxy nouvellement créé apparaît dans la liste Exécuter en tant que . Référez-vous à la capture d'écran 14 .

L’espoir que cela aide.

Capture d'écran n ° 1:

1

Capture d'écran n ° 2:

2

Capture d'écran n ° 3:

3

Capture d'écran n ° 4:

4

Capture d'écran n ° 5:

5

Capture d'écran n ° 6:

6

Capture d'écran n ° 7:

7

Capture d'écran n ° 8:

8

Capture d'écran n ° 9:

9

Capture d'écran n ° 10:

10

Capture d'écran n ° 11:

11

Capture d'écran n ° 12:

12

Capture d'écran n ° 13:

13

Capture d'écran n ° 14:

14

Avec SQL 2012, une erreur s'est produite, indiquant que le compte d'utilisateur choisi n'est pas autorisé à être un proxy. L'utilisation de la requête suivante a résolu ce problème:

use msdb
GO
exec sp_grant_login_to_proxy @login_name = 'MyLoginName', @proxy_name= 'proxy_SSIS'
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top