SSIS issue Failed to decrypt protected XML node - sql

I created an SSIS package which is having ftp pull files from ftp server and save to my local drive but I'm getting this issue.
With same error message I was getting only warning but today the job fails.
Message:
Executed as user: cam\Package.Runner. Microsoft (R) SQL Server Execute Package Utility Version 10.0.4000.0 for 64-bit Copyright (C) Microsoft Corp 1984-2005. All rights reserved. Started: 10:00:00 AM Error: 2012-02-15 10:00:00.61 Code: 0xC0016016 Source: Description: Failed to decrypt protected XML node "DTS:Password" with error 0x8009000B "Key not valid for use in specified state.". You may not be authorized to access this information. This error occurs when there is a cryptographic error. Verify that the correct key is available. End Error Error: 2012-02-15 10:00:00.62 Code: 0xC0016016 Source: Description: Failed to decrypt protected XML node "DTS:Property" with error 0x8009000B "Key not valid for use in specified state.". You may not be authorized to access this information. This error occurs when there is a cryptographic error. Verify that the correct key is available. End Error Error: 2012-02-15 10:00:33.53 Code: 0xC0029183 Source: Principal Balance File FTP Get FTP Task Description: File represented by "/Concerto/Virtus_Reports/Concerto Principal Balance Report*.pdf" does not exist. End Error DTExec: The package execution returned DTSER_FAILURE (1). Started: 10:00:00 AM Finished: 10:00:33 AM Elapsed: 33.088 seconds. The package execution failed. The step failed.

You can fix this issue by setting the Protection Level property
Protection Level : DontSaveSensitive
With this property, the package will not be password protected, and another server can access and execute any job with other credentials.

While importing the package to SQL Server choose Protection Level:
Either
1- Don't save sensitive data.
Or
2- Rely on Server Storage and roles for access control.
Screenshot from SSIS Project Package Properties:

Please try save your package with the option "EncryptSensitiveWithPassword".
Step-1: Right click on your FTP connection manager, go to its Properties (the very bottom, not the Edit button),
and type in the password.
Step-2: Save your package with EncryptSensitiveWithPassword.
Step-3: Now edit the command ling in SQL job agent as below
/FILE "C:\Fullpath of SSIS pkg.dtsx" /DECRYPT password

Before Building and deploying the package, please be sure you've changed the property of the solution like this :
Run64BitRuntime = False

I got the same error message for FTP Connections. I think it was caused by me opening the Package while running BIDS under different credentials to those I created it with.
As a clunky workaround I deleted and re-created the FTP Connection. It worked fine afterwards.

Main part of your SSIS job error is
" 0xC0029183 Source: Principal Balance File FTP Get FTP Task Description: File represented by "/Concerto/Virtus_Reports/Concerto Principal Balance Report*.pdf" does not exist. End Error DTExec: The package execution returned DTSER_FAILURE (1). Started: 10:00:00 AM Finished: 10:00:33 AM Elapsed: 33.088 seconds. The package execution failed. "
It seems that you don't have pdf file on path you have configured in your SSIS package.
Please,check up path and pdf files for import.
Best regards,
Branislav

In case of FTP Connection, you can just create one Script Task before FTP task and set a password for that for example
ConnectionManager FTPConn;
FTPConn = Dts.Connections["FTP Connection Manager"];
FTPConn.Properties["ServerPassword"].SetValue(FTPConn,Dts.Variables["FtpPwd"].value);
and in case of OLE DB you can just add password in the connection string of OLEDB Connection.

This are the steps that worked for me.
copied the package to another folder (just to be safe)
Set the Protection Level to EncryptAllWithPassword and gave it a Password like 'Test'
changed the creator Name to another User that I created
Recreated the job
created a Proxy to run the job
Worked!!

Related

SSIS: Unable to Read from Excel file from a UNC path when deployed to server

I appear to be unable to get my deployed SSIS package to read from a 1997-2003 Excel file.
I get stuck with the following 2 errors:
SSIS Error Code DTS_E_OLEDBERROR, Error code: 0x80004005 An OLE DB
record is available. Source Microsoft JET Database Engine, database
engine cannot open the file, it is already opened exclusively by
another user, or you need permission to view its data.
DTS_E_CANNOTAQUIRECONNECTIONFROMCONNECTIONMANAGER with Error code 0xC0202009
The package itself works with no issues when using SQL data tools on the server logged in as the service account only when deployed to server I see this issue.
To make this issue even more confusing I have setup and tried the following:
Runtime is set to 32 bit on the debugging menu on SQL data tools as well as the job configuration is set to use 32 bit runtime
I am able to UNC to the folder/file when logged in as the SQL service account
Any Ideas?
Thanks,
M
I figured it out in the end. Turns out I missed a step with the permissions.
Yes the Service account had permissions to the folder but I failed to add read permissions to the file itself.
Thanks for all comments/suggestions.
M

SSIS authorized access this information error

Error is as following:
Description: Failed to decrypt protected XML node "DTS:Password" with
error 0x8009000B "Key not valid for use in specified state.". You may
not be authorized to access this information. This error occurs when
there is a cryptographic error. Verify that
Right click on empty space in your package and select properties.
In the shown properties select package password as 'Dont save Sensitive' save the package and rebuild the entire project or solution and then save the package and close the ssis.
When you open again it asks for all the passwords.just provide all the passwords and it should work fine.

SSIS package execution failed inside SQL Agent

I have created one SSIS package which is I have imported into Integration services MSDB
which is executed correctly from Integration services MSDB
But when I tried to create a JOB in SQL Server Agent and try to execute
that job it is giving me following error
I'm unable to get it what is wrong from following error
please help me.
(I have tried by adding config file and deleting config file when I add packge in SQL Server Agent)
Message
Executed as user: cam\Package.Runner. Microsoft (R) SQL Server Execute Package Utility Version 10.0.4000.0 for 64-bit Copyright (C) Microsoft Corp 1984-2005. All rights reserved. Started: 5:05:01 AM Error: 2013-07-02 05:05:01.85
Code: 0xC0016016 Source: Description: Failed to decrypt protected XML node "DTS:Property" with error 0x8009000B "Key not valid for use in specified state.". You may not be authorized to access this information. This error occurs when there is a cryptographic error. Verify that the correct key is available. End Error Error: 2013-07-02 05:05:01.85
Code: 0xC0016016 Source: Description: Failed to decrypt protected XML node "DTS:Password" with error 0x8009000B "Key not valid for use in specified state.". You may not be authorized to access this information. This error occurs when there is a cryptographic error. Verify that the correct key is available. End Error
Error: 2013-07-02 05:05:02.02
Code: 0xC0202009 Source: BloombergFTP Connection manager "WOPR\Fireball_PROD.sa" Description: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80040E4D. An OLE DB record is available. Source: "Microsoft SQL Server Native Client 10.0" Hresult: 0x80040E4D Description: "Login failed for user 'package.runner'.". End Error Error: 2013-07-02 05:05:02.02 Code: 0xC00291EC Source: Execute SQL Task Goodhart Execute SQL Task Description: Failed to acquire connection "WOPR\Fireball_PROD.sa". Connection may not be configured correctly or you may not have the right permissions on this connection. End Error DTExec: The package execution returned DTSER_FAILURE (1). Started: 5:05:01 AM Finished: 5:05:02 AM Elapsed: 0.266 seconds. The package execution failed. The step failed.
Ensure that credential used by "WOPR\Fireball_PROD.sa" BloombergFTP Connection manager is valid before trying the following.
Either
Change the SSIS Package ProtectionLevel property to
EncryptSensitiveWithPassword and Set the Packagepassword if you want
to encrpt the package.Specify this Password at command line in
SQLSERVER Agent Job SSIS configuration.
Change the SSIS Package ProtectionLevel property to DontSaveSensitive if you dont want to encrpt the package.Specify the credential in the SQLSERVER Agent Job SSIS configuration itself.
I ran into a similar problem. My SSIS package was running within SQL Data Tools without errors, but failed within SQL Server Agent, using a admin proxy. Looking into the logs of the job, the error message was something like "Failed to decrypt protected XML node "DTS:Property""
One of the many possible reasons (next to the one given by S.M.) for such an error is that the proxy doesn't have access to tables/databases you're referring to, while you yourself do have access to these tables.
In my case: I was writing stuff to a personal database which couldn't be accessed by the credentials underlying the proxy. Hence, when running the SSIS package within SQL Data Tools, I could access the tables, but when running the job within SQL Server Man. Studio, I couldn't. I changed the destination database of my package and the job could be runned.
This might be helpful for more people running into similar problems.

How do I debug or set breakpoint to SSIS package for FTP task

I have one SSIS package i was deployed on server now i need to debug that SSIS package
so i have downloaded that on my local machine but
I'm not able to set breakpoints not on any step :(
nor able to compile or run why so getting error like
Error : Failed to decrypt protected XML node "DTS:Property" with
error 0x8009000B "Key
not valid for use in specified state.".
You may not be authorized to access this information. This error occurs when there
is a cryptographic error. Verify that the
correct key is available. C:\Users\Job1.dtsx 1 1
Package protection level sets to : EncryptSensitiveWithUserKey
You are getting this error because you are not the user who saved/deployed the package. If the package is encrypted by saving sesative with user key then only that user will be able to run or debug the package properly. You need to change the package protection level to do not save sensitive and then rebuild it. Next you will need to re-enter the sensitive data such as FTP credentials, etc and then change the package protection level to Encrypt sensitive with password. You will then be able to debug the package.
If you deploy to MSDB, then it is always a good idea to choose the Rely on server storage for encryption. If you do this, then when you pull the package down from the package store, it will automatically encrypt using your user key and you can set the appropriate protection level without the pain

SSIS Import excel sheet error

Hi I am tring to import data from excel to sql 2005 .working fine in VS2005,but not working while running from cmd using dtexec.
error description as follows
"Microsoft JET Database Engine" Hresult
: 0x80004005 Description: "The Microsoft Jet database engine could not find the
object .
Can anyone help how to resolve this issue
This could possibly be a permissions error. If the account that is running the package doesn't have sufficient rights on the target folder or object, then this kind of error could be raised by SSIS. You wouldn't see this error in BIDS if your personal account has sufficient rights to access the file location.
Do you receive this error when the package is executed via a SQL Server Agent job? Do you receive this error when logged into the server that runs the code using the credentials of the SQL Server Agent?
Try to see you you have the property 'Set DelayValidation' = false
(Microsoft Reference)
If it still does not work, check to see if you have the package sensible information, encrypted to the user package creator (package properties), this inhibits another user to run the package (safety issues).
Hope it helps,
Bruno