【问题标题】:Can't change the LCM credential of a DSC pull node无法更改 DSC 拉节点的 LCM 凭据
【发布时间】:2016-06-28 03:51:53
【问题描述】:

我正在尝试创建我的第一个 DSC 拉取配置。如果我将节点服务器存储在节点服务器上的目录中,我的节点服务器可以读取其 .mof 文件,但它无法从配置存储库文件夹访问其配置 .mof,因为它似乎没有对该文件夹的读取权限.mof 和 .mof.checksum 文件在哪里。这可能是因为节点服务器的 LCM 默认使用本地系统凭据,而不是用户登录凭据。我无法设置 LCM 凭据值。

拉取服务器已启动并正在运行(已确认)。 .mof 和 .checklist.mof 文件存储在网络共享文件夹“\myNetworkShares\DSC-Configs”中。

这是我如何配置节点服务器的 LCM,我在其中设置了 ConfigurationRepositoryShare 的凭据

[DSCLocalconfigurationManager()]
Configuration LCM_CLIENT_PULL 
{           
    Node $AllNodes.NodeName
    {
        Settings {
            AllowModuleOverwrite = $True
            ConfigurationMode = 'ApplyAndAutoCorrect'
            RefreshMode = 'Pull'
            ConfigurationID = $node.Guid
            CertificateID = $node.ThumbPrint
        }
        ConfigurationRepositoryShare DSCSMB {
            Credential = $node.Credential
            Sourcepath = "\\myNetworkShares\DSC-Configs"
        }   
    }
}

我尝试通过键入来调用我的节点服务器来运行它的配置 更新-DscConfiguration -ComputerName myNodeServerName -Wait -Verbose

我收到一个错误:(注意:当 .mof 存储在我的节点服务器上具有读取权限的目录中时不会发生错误!)

找不到文件 \\myNetworkShares\DSC-Configs\name.mof。 + CategoryInfo : ObjectNotFound: (\\myNetworkSha...name.mof:String) [], CimException + FullyQualifiedErrorId : DSCFileFileNotFound,Microsoft.PowerShell.DesiredStateConfiguration.DownloadManager.FileGetAct 离子命令 + PSComputerName:myNodeServerName

我正在尝试更改凭据属性,以便我的节点服务器可以访问配置 .mof 文件,方法是将我的凭据包含在以下代码行中:

Set-DSCLocalConfigurationManager -ComputerName myNodeServerName -Path c:\LocationOfMyNodeMetaDataMofFile –Verbose -Credential $myCreds

但是,凭据属性永远不会显示为已填充。如何更改节点服务器上 LCM 的凭据属性???

link to LCM config image

更多注释: 我通过在拉节点 LCM 配置 .meta.mof 文件中允许纯文本密码来暂时避免加密。 我可以看到凭据在使用 Set-DSCLocalConfigurationManager 之前已写入 myNodeServer.meta.mof 文件

【问题讨论】:

    标签: powershell dsc lcm


    【解决方案1】:

    在基于文件的拉取服务器中有一个带有凭据参数的known issue。您可以尝试按照此博客http://nanalakshmanan.com/blog/Push-Config-Pull-Module/ 中所述为所有人设置读取权限

    【讨论】:

    • 我可以,事实上,作为一种变通方法,我们正在使用 SMB 共享实现(而不是 https),并且我们避免了证书和加密来进行脚本开发(当前使用 PSDscAllowPlainTextPassword = $true),但我担心我们将如何在 PRODUCTION 中实现 DSC 连接。我们不希望每个人都能够访问我们的配置。
    • PSDscAllowPlainTextPassword 是个坏主意。您可以加密凭据,它仍然适用于基于文件的拉取
    • 不加密密码就不投入生产了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-30
    相关资源
    最近更新 更多