Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hi,
I'm using implicit context load in my project. There are password value set to type:Password in the file.
Password is encrypted. Then set to be decrypted in the job. Encryption and decryption is done using a custom routine.
I referred to this link right here: https://help.talend.com/r/HqPypUO_cLctKv_dAWcgFw/O88KGukAUjT80ZCARNfl5w
The job can run successfully in Talend, but when build the job and run the batch file, it failed. Suspect because it did not decrypt the password. What could be the possible cause that it can run in Talend but failed when run the executable batch file?
Thanks in advance!
Hello,
Are you getting "java.sql.SQLException: Access denied for user"xxxx" error when execute your job script in CMD? Can you please clarify in which Talend version/edition you are?
Have you tried to change the datatype of password in context from "password" to "String" and try once to see if this issue still reprp? Any issue on Context value?
Best regards
Sabrina
Hello,
I'm getting "java.sql.SQLException:Login failed for user 'xxxxx'" when execute in CMD.
Am using TOS for DI 7.3.1.
I've tried changing datatype to String, same issue happened too.
Regards.
Hello,
The Use case: Encrypting a password in Talend studio documentation is not available in talend V 7.3 and I'm not sure the ROT13 algorithm for password encryption is still applicable for V 7.3.
We are supposing that encrypt function is not working well when build your job as a standalone one.
For Studio version 7.3 and higher we use AES 256 bit as the encryption algorithm.
Best regards
Sabrina
Hello Sabrina, thanks for your reply.
Fyi, the encryption decryption routine I created is using AES 256. For now I'll just use context variable (not implicit context load from file) but do you have any workaround on how to make it work after build the job?
Regards.
Read the password value as a string, call the custom routine to decrypt the encryptedPassword string. For debugging, print the return value to check if the value is correct before it is used.
Regards
Shong