4 votes

Exécution de paquets SSIS à distance - sous quel compte s'exécutent-ils ?

Je développe actuellement une application en .NET 4.0 qui utilisera des paquets SSIS 2008R2 pour effectuer son travail. Les packages sont situés sur un serveur SQL séparé. Le serveur SQL dispose d'un compte proxy qui possède toutes les autorisations nécessaires à l'exécution des packages (appel de Reporting services, accès au disque, etc.).

Ma question est la suivante : quelle est la meilleure façon d'exécuter ces paquets à partir de C# ?

J'ai lu qu'il était possible d'utiliser SQL Agent pour exécuter les packages par le biais de jobs, mais mon problème est le suivant : quel compte le job et les packages utiliseront-ils ? S'agira-t-il du compte sous lequel l'application est exécutée ou puis-je utiliser le compte proxy que j'ai dans le serveur SQL ? Comment puis-je configurer cela ?

Merci d'avance !

1voto

FrankPl Points 9921

Vous pouvez configurer l'utilisateur sous lequel chaque étape du travail est exécutée dans l'agent SQL Server. Il est courant d'utiliser l'utilisateur proxy dans ce cas.

Un moyen simple de lancer les tâches au cas où vous auriez besoin d'accéder à la base de données du serveur SQL est d'appeler la commande Procédures stockées du système SQL Server Agent . Il convient toutefois de noter que le démarrage d'un travail via dbo.sp_start_job est asynchrone : il démarre le travail et revient ensuite. Vous devrez interroger d'autres méthodes pour vérifier l'état ou le résultat du travail.

L'utilisateur de la base de données que vous utilisez pour vous connecter à la base de données (ou votre utilisateur local si vous utilisez la connexion intégrée au serveur SQL) doit avoir la permission d'appeler la procédure stockée.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X