如果我使用“使用密码加密全部”保存包,则执行包任务询问密码

时间:2013-03-13 07:46:30

标签: ssis

我有一个使用执行包任务执行7个包的包。这7个软件包的保护级别为“使用密码加密所有数据”。

配置执行包任务时,我选择了位置为“文件系统”。每天我需要手动运行此包。但问题是我每次要执行它时都需要为所有7个软件包提供密码。通常我会在午餐时间运行这个包。

无论如何我可以通过编程方式存储包密码吗?如果我昨天运行它并且我没有关闭BIDS并且我今天再次运行它将不会要求密码。

我还试图在第一次运行之后构建软件包,而不是要求输入密码。然后我再次运行它而不关闭BIDS。但这仍然无效。

1 个答案:

答案 0 :(得分:3)

即使您存储package passwords SSIS,当您使用BIDS执行密码时,也会始终提示您输入密码。这是因为BIDS尝试打开个人child package designer,因此提示您输入密码。

所以唯一的方法就是执行它而不dialogue prompt password使用sql agentdtexec utility

1.为了执行子包,我建议您为父包创建配置文件,并为所有Package Password

选择属性Execute Package Task

enter image description here

2.现在在配置文件中输入所有个人execute package task

的密码
<Configuration ConfiguredType="Property" Path="\Package\Execute Package Task.Properties[PackagePassword]" ValueType="String">
    <ConfiguredValue>Password</ConfiguredValue>
</Configuration>

3.使用dtexec utility

执行您的包裹
dtexec.exe /f "PackageLocation/Parent.dtsx"