C# 远程运行SSIS包-它们在哪个帐户下运行?

C# 远程运行SSIS包-它们在哪个帐户下运行?,c#,.net,ssis,sql-server-2008-r2,C#,.net,Ssis,Sql Server 2008 R2,我目前正在.NET 4.0中构建一个应用程序,该应用程序将使用SSIS 2008R2包来完成其工作。这些包位于单独的SQL Server上。SQL server有一个帐户代理,该代理具有执行包所需的所有权限(调用Reporting services、访问磁盘等) 我的问题是:从C#运行这些包的最佳方式是什么 我读过关于使用SQL代理在作业中运行包的内容,但我关心的是-作业和包将使用什么帐户?是运行应用程序的帐户,还是我可以使用SQL Server中的代理帐户?我如何配置它 提前谢谢 您可以在SQ

我目前正在.NET 4.0中构建一个应用程序,该应用程序将使用SSIS 2008R2包来完成其工作。这些包位于单独的SQL Server上。SQL server有一个帐户代理,该代理具有执行包所需的所有权限(调用Reporting services、访问磁盘等)

我的问题是:从C#运行这些包的最佳方式是什么

我读过关于使用SQL代理在作业中运行包的内容,但我关心的是-作业和包将使用什么帐户?是运行应用程序的帐户,还是我可以使用SQL Server中的代理帐户?我如何配置它


提前谢谢

您可以在SQL Server代理中配置运行每个作业步骤的用户。在这里使用代理用户是很常见的

在需要SQL Server数据库访问时,启动作业的一种简单方法是调用。但是请注意,通过
dbo.sp_start_job
启动作业是异步的:它只是启动作业,然后返回。您必须轮询其他方法来检查工作状态或结果


您用于连接数据库的数据库用户(如果您使用集成登录SQL Server,则您的本地用户)必须具有调用存储过程的权限。

感谢您的快速响应。这是否意味着如果我使用必要的代理用户创建代理作业,然后从C#远程执行它,它将使用此用户运行包,而不是运行C#进程的包?我指的是这篇文章:其中提到了进程权限。据我所知,他们正建议使用SQL Server代理作业,以便利用在远程计算机上的不同用户下运行的功能。也许我不理解正确的含义。感谢您的帮助,如果出现任何差异,我们将发回。