2017-02-21 29 views
2

对敏感数据(如密码或其他内容)使用“设置变量”操作将值记录到日志文件中。有没有办法来防止这种变量的行为?我们正在使用install4j版本6.0.4。我也尝试创建自定义操作,但使用context.setVariable(...)设置变量具有相同的效果并生成类似Variable changed: my.password=abc123[class java.lang.String]的日志条目。我们需要避免这个日志条目。如何防止记录敏感变量值?

回答

1

您可以拨打

context.registerHiddenVariable("variableName") 

这些变量。

在6.1中,对于预定义的安装程序变量,配置面板具有“Sesitive信息,不要将值写入日志文件”复选框。

+0

谢谢。这个选项也存在于6.0.4中,但它不会阻止这些值被写入安装目录下的'.install4j'文件夹中的'i4jparams.config'文件,对吗?所有人都可以从这个文件中读取敏感数据。 – Hardie82

+1

“registerHiddenVariable(...)'与我们的自定义操作相结合的解决方案可以正常工作。 – Hardie82

+0

好的,还剩下一个问题:是否可以避免将suppresed安装程序变量的值打印到'[installtion-dir]/install4j/i4jparams.conf'文件中?为了避免它们被记录下来,但是在某些配置文件中以明文形式打印并不安全,是吗? – Hardie82