{"id":485,"date":"2010-01-29T13:33:32","date_gmt":"2010-01-29T20:33:32","guid":{"rendered":"http:\/\/www.nicholasgoodman.com\/bt\/blog\/2010\/01\/29\/encrypt-pdi-passwords\/"},"modified":"2010-01-29T13:33:32","modified_gmt":"2010-01-29T20:33:32","slug":"encrypt-pdi-passwords","status":"publish","type":"post","link":"http:\/\/www.nicholasgoodman.com\/bt\/blog\/2010\/01\/29\/encrypt-pdi-passwords\/","title":{"rendered":"Encrypt PDI passwords"},"content":{"rendered":"<p>PDI has a basic obfuscation method for making it difficult for casual people to lift passwords for DB connections.  I have customers that maintain different versions of a &#8220;shared.xml&#8221; file that maintain different physical connections to databases (think development, QA\/testing, and production).<\/p>\n<p>In order to generate the different shared.xml, a user <span style=\"text-decoration: line-through;\">has to<\/span> <em>usually (per Matt Casters comment below there is a utility that allows user to do this outside of Spoon)<\/em> open up PDI, created the connections, save them, and then sometimes copy and paste the sections needed to create their &#8220;dev&#8221; version of shared.xml or their &#8220;production&#8221; version of shared.xml.  Many times this just to generate the password, as they can hand edit the other pieces (hostname, schema, etc).<\/p>\n<p>I just committed a <a href=\"http:\/\/source.pentaho.org\/svnkettleroot\/Kettle\/trunk\/samples\/transformations\/Encrypt%20Password.ktr\">quick little PDI transformation<\/a> that gives you the PDI encrypted form of a password.<\/p>\n<p><a onclick=\"window.open('http:\/\/www.nicholasgoodman.com\/bt\/blog\/wp-content\/uploads\/2010\/01\/201001291332.jpg','popup','width=659,height=313,scrollbars=no,resizable=yes,toolbar=no,directories=no,location=no,menubar=no,status=yes,left=0,top=0');return false\" href=\"http:\/\/www.nicholasgoodman.com\/bt\/blog\/wp-content\/uploads\/2010\/01\/201001291332.jpg\"><img decoding=\"async\" loading=\"lazy\" src=\"http:\/\/www.nicholasgoodman.com\/bt\/blog\/wp-content\/uploads\/2010\/01\/201001291332-tm.jpg\" border=\"1\" alt=\"201001291332\" hspace=\"4\" vspace=\"4\" width=\"210\" height=\"100\" \/><\/a><\/p>\n<p>Happy Password Encrypting!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>PDI has a basic obfuscation method for making it difficult for casual people to lift passwords for DB connections. I have customers that maintain different versions of a &#8220;shared.xml&#8221; file that maintain different physical connections to databases (think development, QA\/testing, and production). In order to generate the different shared.xml, a user has to usually (per [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[15,11],"tags":[],"_links":{"self":[{"href":"http:\/\/www.nicholasgoodman.com\/bt\/blog\/wp-json\/wp\/v2\/posts\/485"}],"collection":[{"href":"http:\/\/www.nicholasgoodman.com\/bt\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.nicholasgoodman.com\/bt\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.nicholasgoodman.com\/bt\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/www.nicholasgoodman.com\/bt\/blog\/wp-json\/wp\/v2\/comments?post=485"}],"version-history":[{"count":0,"href":"http:\/\/www.nicholasgoodman.com\/bt\/blog\/wp-json\/wp\/v2\/posts\/485\/revisions"}],"wp:attachment":[{"href":"http:\/\/www.nicholasgoodman.com\/bt\/blog\/wp-json\/wp\/v2\/media?parent=485"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.nicholasgoodman.com\/bt\/blog\/wp-json\/wp\/v2\/categories?post=485"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.nicholasgoodman.com\/bt\/blog\/wp-json\/wp\/v2\/tags?post=485"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}