我创建了一个Pull Server配置。 Pull Server(也用于编译MOF文件和客户端)都是Windows Server 2016,完全从Azure Image更新。
传递凭据时,我一直遇到错误。因此,当我运行Start-DSCConfiguration -Wait -Verbose时,我写了一个小的自定义DSC资源,显示密码为clear txt
您可以在此处找到它:https://gist.github.com/aboersch/65e846a4966fe2c4708ed21d655a54a7
客户端无法正确解密凭据。作为我收到的密码
-----BEGIN CMS-----
<Long Multi-Line Base64 String>
-----END CMS-----
如果我将此传递给Unprotect-CmsMessage,我会收到正确的密码。
证书传递$ .PrivateKey.KeyExchangeAlgorithm和$ .Verify
我尝试将证书提供程序更改为“Microsoft Enhanced Cryptographic Provider v1.0”,“Legacy Cryptographic Service Provider”和“Microsoft RSA SChannel Cryptographic Provider”。
我也尝试了xDSCUtils New-xSelfSignedDscEncryptionCertificate。
如果我使用相同的证书并在同一台服务器上编译和执行,则没有问题。
我已经尝试过这些: DSC problems with Credentials and build 10586 https://wespoint.wordpress.com/2017/01/19/powershell-dsc-encryption-issue/
以下是证书属性:
EnhancedKeyUsageList : {Client Authentication (1.3.6.1.5.5.7.3.2), Server Authentication (1.3.6.1.5.5.7.3.1)}
DnsNameList : {ComputerFQDN}
SendAsTrustedIssuer : False
Archived : False
EnhancedKeyUsage : Document Encryption (1.3.6.1.4.1.311.80.1)
FriendlyName :
IssuerName :
NotAfter : 4/14/2018 1:09:37 PM
NotBefore : 4/14/2017 1:09:37 PM
HasPrivateKey : True
PrivateKey :
PublicKey : RSA (2048 bits)
RawData :
SerialNumber : 19000000115FCB3C2E4C71BA69000000000011
SubjectName :
SignatureAlgorithm : sha256RSA
Thumbprint : F4238E74BFB238DEE89C78C13B5C2C8182674801
Version : 3
Handle : 1362382910512
Issuer : CA
Subject : CN=ComputerFQDN
答案 0 :(得分:0)
问题主要与部分配置有关,我相信它是Windows Server 2016上WMF 5.1中的一个真正的Bug。
基本上,如果您有部分配置(推送或拉动并不重要),其中一个配置功能不包含具有凭证的资源,从而强制使用MOF证书序列化凭证,解密将失败。
您可以在Windows Server 2016或Windows 10上使用WMF 5.1自行重现: