Once upon a time I had to write an SSIS package that would upload some files to an FTP server. Unfortunately this isn’t as easy as it should be - the following C# script fixes whatever Microsoft broke when implementing the FTP Connection Manager

object ftpConnectionManager = (object)Dts.Connections["FTP Connection Manager"];
string user = "user";
string pass = "pass";
Dts.Connections["FTP Connection Manager"].Properties["ServerUserName"].SetValue(ftpConnectionManager, user);
Dts.Connections["FTP Connection Manager"].Properties["ServerPassword"].SetValue(ftpConnectionManager, pass);