如何在不设置证书的情况下使用加密的 MOF 文件推送 DSC 配置?

How can I push a DSC configuration with encrypted MOF files without setting up certificates?

我正在尝试使用 Powershell 5.1 将包含凭据的 Desired State Configuration 推送到远程服务器。根据the DSC documentation,这应该不是问题,因为"Beginning with PowerShell version 5.0, the entire MOF file is encrypted by default when it is applied to the node using the Start-DSCConfiguration cmdlet."

然而,每当我尝试不使用加密证书时,我总是收到关于未加密 MOF 文件中纯文本密码的常见错误消息(System.InvalidOperationException 错误处理 属性 'Credential' OF TYPE 'File':转换和 不建议将加密密码存储为纯文本。)。

这是手册中的错误,还是我做错了?换句话说:如何在不设置证书的情况下使用加密的 MOF 文件推送 DSC 配置?

推送部署的自动加密确实有效,但我误解了错误消息和文档,因此也误解了结果。

我的开发机器上的 MOF 文件从未加密过,即使在将它们推送到目标服务器之后也是如此。我想这就是错误消息所指的内容。

但是,目标服务器上的 MOF 文件(例如查看 C:\Windows\System32\Configuration\Windows\pending.MOF 时)确实是加密的。

换句话说,如果推送是唯一使用的部署方法,并且推送脚本在将它们推送到服务器后立即删除开发机器上的 MOF 文件,那么在 MOF 文件中使用纯文本密码似乎没问题。但我仍然需要使用 PSDscAllowPlainTextPassword 参数明确允许它们。