WiX heat.exe工具FIPS合规性

时间:2014-03-31 17:52:55

标签: wix

首先让我建立一些背景背景。我已经做了我能做的一切来禁用我的系统上的fips。如果它仍然启用,那么它太深了,甚至我的系统管理员都不能用他的凭据把它拿出来。

另外,我已经添加了:我可以在我的系统上找到的每个msbuild.exe.config。

那就是说我害怕了:

异常类型:System.InvalidOperationException

堆栈跟踪:    在System.Security.Cryptography.MD5CryptoServiceProvider..ctor()    在Microsoft.Tools.WindowsInstallerXml.Common.GenerateIdentifier(String prefix,Boolean fipsCompliant,String [] args)    在Microsoft.Tools.WindowsInstallerXml.Extensions.DirectoryHarvester.HarvestDirectory(String path,String relativePath,Boolean harvestChildren)    在Microsoft.Tools.WindowsInstallerXml.Extensions.DirectoryHarvester.Harvest(String argument)    在Microsoft.Tools.WindowsInstallerXml.Harvester.Harvest(String argument)    在Microsoft.Tools.WindowsInstallerXml.Tools.Heat.Run(String [] args)

深入研究代码我发现了类和方法:

Microsoft.Tools.WindowsInstallerXml.Common.GenerateIdentifier

Source for above class on github

有一个参数将切换到fips兼容算法。问题是,我似乎无法弄清楚如何通过heat.exe获取该值并进入它。我尝试了许多命令行配置,但似乎都没有。

我不是主要的.NET开发人员,因此可能会遗漏一些非常明显的东西。

2 个答案:

答案 0 :(得分:0)

Heat.exe不支持符合FIPS标准的ID;它总是使用MD5。这是一个合理的功能请求,但是,如果您想在http://wixtoolset.org/issues/处提交一个请求。

答案 1 :(得分:0)

此问题的存在是因为heat.exe目前不支持传递符合fips的参数。已请求此功能http://wixtoolset.org/issues/4368/