2017-02-21 28 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