最近因为公司业务需要,需要对人员账号的密码进行加密以及解密。从网上找了不少例子,但是都不太清晰,研究成功以后,自己做一个简单地例子。
生成记录
首先我们需要生成记录(实际业务的时候将字段替换成数据流的字段)
加密
利用JS脚本,对字段内容进行加密操作,明文保留作为对比。
输入脚本:
var encrypted_password = 'not encrypted';
encrypted_password = "Encrypted " + Packages.org.pentaho.di.core.encryption.Encr.encryptPassword(a);
这里的a就是前一个输入字段。
然后获取变量(变量名随意)
如下图:
我们可以预览看看结果,然后再解密
解密
接着我们同样使用JS对加密的文本进行解密,输入脚本,获取变量(变量名随意)
var setValue;
setValue = org.pentaho.di.core.encryption.Encr.decryptPasswordOptionallyEncrypted(encrypted_password);
预览结果
最终我们预览看看我们的结果