Having changed the policy, the package still runs, so at least I haven't made it worse! The real test will be after I'm able to reboot the server next month. Your links will help remind me of the details of what to do if it fails after that. Thank you. With any luck I'll have had time to test the alternative methods (JDBC, Ardgate, PHP) by then and see if they have merit.
--
Sean Porterfield
________________________________________
From: Matt Olson
Sent: Thursday, February 21, 2013 10:12
To: Midrange Systems Technical Discussion
Subject: RE: Microsoft Integration Services password
Sean,
I believe this might be caused by the default password encryption policy in SSIS. The default is "EncryptSensistiveWithUserKey" which uses the profile that originally created the package to store the encryption keys and requires that user execute/login to run that package. There are better alternatives you can read here:
http://msdn.microsoft.com/en-us/library/ms141747.aspx
The most simple being EncryptSensitiveWithPassword, and then provide the /Decrypt "password" command line switch to DTEXEC (read about it here:
http://msdn.microsoft.com/en-us/library/ms162810(v=sql.105).aspx)
Matt
-----Original Message-----
From: Porterfield, Sean [mailto:SPorterfield@xxxxxxxxxxxxxxxxxxxxxxx]
Sent: Wednesday, February 20, 2013 6:17 PM
To: Midrange Systems Technical Discussion
Subject: Microsoft Integration Services password
I've been using DTS for years on SQL Server 2005 to pull data from our IBM i (or whatever it was called then ;) )
Now I have a new project on SQL Server 2008, so I used Integration Services to pull the data. I automate it from a batch job when the data is ready, calling RUNRMTCMD to DTEXEC on the Windows box.
Whenever the Windows box is rebooted, I have to log on as the user listed in the RUNRMTCMD, start the data transfer process, and key the IBM i user password in the normal System i Access password dialog. It then works fine, even after logging off, until the system is rebooted again.
Does anyone know a way to make it keep the password? I typed it in the ODBC properties when I created the IS process, but it doesn't store it.
If not, (or regardless) what would others recommend for a data transfer process? At this time, I don't think I'm actually changing any of the data, just using TRUNCATE TABLE and pulling in an entire *PF to replace it.
I was thinking it's probably possible and not horribly difficult to do in PHP, but I've only ever done that for a single record update. JDBC comes to mind as another option, though I've never installed or used it. It seems more logical to run the entire process from the i instead of having to bounce back and forth.
--
Sean Porterfield
This email is confidential, intended only for the named recipient(s) above and may contain information that is privileged. If you have received this message in error or are not the named recipient(s), please notify the sender immediately and delete this email message from your computer as any and all unauthorized distribution or use of this message is strictly prohibited. Thank you.
As an Amazon Associate we earn from qualifying purchases.