在本地PC上的SQL Server代理中运行SSIS 2005连接到远程服务器上的数据库时出错

在本地PC上的SQL Server代理中运行SSIS 2005连接到远程服务器上的数据库时出错,ssis,sql-server-agent,remote-server,Ssis,Sql Server Agent,Remote Server,我试图从本地电脑上的SQL Server代理作业运行SSIS 2005包。此包试图连接到远程服务器上的SQL Server 2005数据库,但它收到错误消息,用户“NT AUTHORITY\ANONYMOUS LOGON”登录失败。。问题是什么?我如何解决它?问题是SSIS包是在运行SQL Server代理服务的帐户(可能是本地PC的“本地系统”或“网络服务”帐户)的NT凭据下执行的,正在尝试使用windows集成安全性连接到远程SQL实例。此操作失败,因为远程SQL server无法验证允许连

我试图从本地电脑上的SQL Server代理作业运行SSIS 2005包。此包试图连接到远程服务器上的SQL Server 2005数据库,但它收到错误消息,
用户“NT AUTHORITY\ANONYMOUS LOGON”登录失败。
。问题是什么?我如何解决它?

问题是SSIS包是在运行SQL Server代理服务的帐户(可能是本地PC的“本地系统”或“网络服务”帐户)的NT凭据下执行的,正在尝试使用windows集成安全性连接到远程SQL实例。此操作失败,因为远程SQL server无法验证允许连接的服务帐户

开发该软件包时,该软件包正在使用您的NT凭据(远程SQL server可以验证的域帐户)连接到远程SQL server


最快的修复方法是将运行SQL Server代理服务的服务帐户更改为具有连接到远程SQL Server权限的域帐户。为了证明这是问题,你可以使用你自己的域名帐户,虽然这不是一个长期的解决方案。

< P>另一个要考虑的问题是“跳数”。如果我试图从连接到远程数据库的本地计算机运行SP,而远程数据库正试图连接到另一个远程数据库。我将得到上面的错误。但是,如果我先远程连接到主服务器,然后使用远程连接运行SP,则工作正常。

您可以创建一个SQL作业来运行start_execution命令,然后进程将在运行该作业的用户下运行


方法已解释。

谢谢你,Ed。这正是DBA刚刚告诉我的。长期解决方案是什么?@user317178-长期而言,解决方案是获得一个专门为SQL代理服务创建的NT帐户,该帐户可以被授予仅运行作业实际需要的资源的权限。除非工作进入生产系统,否则您可能不需要担心这一点。“跳数”通常是关于网络的,因此在这里使用不当。相反,我们实际上是在讨论直通式身份验证的需要。可以通过使用显式凭据在源服务和目标服务上设置身份验证来解决此问题。发生故障的原因是源计算机和目标计算机本身并不相互信任,也不应该相互信任。明确的凭证将解决您的问题。请注意,答案应该是搜索解决方案的终点(而不是另一个参考的中途停留,随着时间的推移,这些参考往往会过时)。请考虑在这里添加一个独立的概要,将链接作为参考。