微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为SSIS SourceConnectionOLEDB指定Windows帐户

如何解决为SSIS SourceConnectionOLEDB指定Windows帐户

我正在使用sql Server上的sp_start_job从.aspx启动SSIS包。

此软件包是一个导入作业,其中目标数据库与该作业位于同一服务器上,因此DestinationConnectionOLEDB使用与运行该作业相同的sql凭据。 但是,源在另一台服务器上,并且SourceConnectionOLEDB需要Windows域帐户才能登录。 (该程序包可以使用我的Windows帐户从Visual Studio中正常运行)。 对于SourceConnectionOLEDB中的帐户,我似乎有两种可能的解决方案。

  • 要么通过正在运行.aspx的用户的帐户,要么
  • 或在软件包中指定固定的Windows帐户和密码。

最后一次似乎无法在Visual Studio中完成,一旦选择Windows身份验证,就会禁用“用户ID”和“密码”字段。还是有一种方法可以在SSIS中保存此信息?

如果没有,如何将用户的Windows凭据传递给sp_start_job

解决方法

如果我做对了,您有一个运行SSIS包的SQL Server代理作业,其步骤为“ SQL Server Integration Services包”类型。 您无法将AD用户登录信息保存在SSIS(afaik)中,但是可以通过设置要在该特定作业步骤中使用的凭据和代理来指定哪个用户在SQL Server中运行作业步骤。

运行作业时,默认情况下它将作为SQL Server代理帐户执行,但是您可以使用凭据和代理对其进行更改。

  • 凭据(安全-凭据)允许您指定用户名和pw(甚至是AD用户),供代理稍后使用
  • 代理(SQL Server代理-代理)允许您指定哪些凭证可用于不同的作业步骤类型。

摘要:

  1. 为您的AD用户创建凭据对象(安全性-凭据)
  2. 创建代理对象(SQL Server代理-代理)
    • 使用第1点中定义的凭据
    • 启用子系统“ SQL Server集成服务包”
  3. 配置作业步骤
    • 在“运行方式”下拉列表中,您应该看到刚刚创建的代理

当然,您必须在包装中为数据源设置Windows身份验证

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。