测试环境: win10 + PDI 9.0 (Pentaho Data integation 9.0.0.0-423 )
1、进入KETTLE的安装目录
如:cd /d E:\DATA-INTERGRATION
命令行执行: encr.bat -kettle 123
可生成 Encrypted 2be98afc86aa7f2e4cb79ce10bec3fd89 ,即为123对应KETTLE生成的加密后的密码。
2、解密
1)、新建一个转换,文件>>新建>>转换。
2)表输入:从数据库表取一行记录
3)在核心对象>>脚本>>JavaScript代码组件。在脚本窗口输入以下解密代码,密码的密文从上面获取:
var setValue;
setValue = Packages.org.pentaho.di.core.encryption.Encr.decryptPasswordOptionallyEncrypted('Encrypted 2be98afc86aa7f2e4cb79ce10bec3fd89');
通过获取变量、测试脚本按钮返回 密码明文。
var setValue;
setValue = Packages.org.pentaho.di.core.encryption.Encr.decryptPasswordOptionallyEncrypted('Encrypted 2be98afc86aa7f2e4cb79ce10bec3fd89');
4)将密文输出到文本文件。
文本内容:
USERNAME;PASSWORD;DESCRIPTION;ENABLED;setValue
admin;;;Y;123
3、加密
1)、新建一个转换,文件>>新建>>转换。
2)在核心对象>>脚本>>JavaScript代码组件。在脚本窗口输入以下加密代码,密码为123: