我在SSIS中执行FTP任务时收到以下错误.
The Password was not allowed
Run Code Online (Sandbox Code Playgroud)
这是什么意思?
SSIS保存基于ProtectionLevelpackage属性值加密的敏感数据(如密码).EncryptSensitiveWithUserKey默认情况下,此值(这意味着可以使用创建程序包的同一用户帐户读取加密部分).了解有关TechNet上的访问控制的更多信息
您可以将此属性设置为EncryptSensitiveWithPassword,然后设置该PackagePassword属性.您可以使用带/De {password}参数的DTExec实用程序执行包.(您可以通过右键单击包的控制流上的空白区域,然后选择"属性"项来编辑包属性).
另一种方法是设置一个简单的Script Task(在之前FTP Task),它在运行时设置值.以下代码设置FTPConnectionName连接的密码属性.
C#代码
ConnectionManager FTPConn;
FTPConn = Dts.Connections["FTPConnectionName"];
FTPConn.Properties["ServerPassword"].SetValue(FTPConn, "YourPassword");
Dts.TaskResult = (int)ScriptResults.Success;
Run Code Online (Sandbox Code Playgroud)
将此代码添加到脚本任务的入口点(Main()函数).(可选)您可以将一个字符串变量添加到包中,并将其添加到脚本任务的只读变量中,并使用它(Dts.Variables["FTPPassword"].Value)来设置密码.