如何通过Windows命令行隐藏MSI安装日志中的密码?
解决MSI安装日志中密码泄露的问题
要在命令行中通过MsiHiddenProperties隐藏SERVICES_PASSWORD的日志输出,只需将该属性作为参数传递给msiexec,指定需要隐藏的属性名称即可。
具体修改后的命令
msiexec /qn /L*v "AgentInst.log" /i "Agent.msi" SERVER_HOSTNAME={IP for server} SERVER_PORT=9898 SERVICES_PASSWORD="{Password for services}" START_AGENT=false ACCEPT_EULA=true MsiHiddenProperties=SERVICES_PASSWORD
关键说明
MsiHiddenProperties是MSI的内置属性,作用是标记哪些属性的值不会被写入安装日志。指定SERVICES_PASSWORD后,日志中只会记录该属性的名称,不会显示实际密码内容。- 如果需要隐藏多个属性,用分号分隔属性名,比如:
MsiHiddenProperties=SERVICES_PASSWORD;ANOTHER_SECRET_PROPERTY - 确保属性名称与命令行中传递的密码属性完全一致(大小写不敏感,但建议保持一致避免问题)
验证方式
执行修改后的命令后,打开AgentInst.log搜索SERVICES_PASSWORD,会看到类似PROPERTY: SERVICES_PASSWORD = *****的记录,而非实际密码。
内容的提问来源于stack exchange,提问作者Saurabh Kulkarni
相关产品推荐
相关产品推荐

