数据保存更新
通过工作流将写入数据库中的字段进行加密保存。
需求场景
用户注册时,填入密码(身份证,手机号),不得用明文保存,需要加密保存。
配置思路
保存密码时,用DB触发器,获取到密码明文,用脚本加密后更新保存。
配置过程
使用文本控件填写密码,配置必填、格式等密码字段的属性。
配置工作流,创建DB触发器。
节点1,创建DB触发器,触发事件为新增。
节点2,使用运算节点,获取用户输入的,未经加密的明文。
节点3,通过脚本节点,引入js脚本对明文进行加密,参数名:encryptStr,对应于加密js脚本中的变量名。
节点4,用加密处理后的数据更新密码字段,保存。
附:加密js代码
点击展开/折叠const crypto = require('crypto'); const func = async (app, params) => { /** * 请在main()函数中添加代码,其他代码不要随意改动 */ class EvalTemplate { constructor(app, params) { this.params = params; this.app = app; } //示例代码 async main() { const pass = typeof this.params[0].value !== 'string' ? JSON.stringify(this.params[0].value) : this.params[0].value; return { encryptStr: crypto.createHash('md5').update(pass).digest('hex') }; } /** * 入口函数 * * @return {} */ static init(app, params) { return new EvalTemplate(app, params); } } return await EvalTemplate.init(app, params).main(); }; func(app, params);
%/accordion%