使用DSC资源配置HKEY_CURRENT_USER实际上更新了HKEY_USERS \ .DEFAULT

时间:2017-02-08 22:34:45

标签: dsc powershell-dsc

以下DSC声明写入注册表项HKEY_USERS.DEFAULT \ Console而不是HKEY_CURRENT_USER \ Console。为什么呢?

Registry ConsoleFaceName
{
  Key         = 'HKEY_CURRENT_USER\Console'
  ValueName   = "FaceName"
  ValueData   = "Lucida Console"
  Ensure      = "Present"
}

1 个答案:

答案 0 :(得分:4)

写入.DEFAULT的行为是因为DSC本地配置管理器(LCM)作为本地系统运行,该系统没有当前的用户注册表配置单元。

如果您希望更新特定用户,则需要使用PsDscRunAsCredential (docs linked)运行,其中$Credential是您要更改其值的用户凭据。

Registry ConsoleFaceName
{
  Key                   = 'HKEY_CURRENT_USER\Console'
  ValueName             = "FaceName"
  ValueData             = "Lucida Console"
  Ensure                = "Present"
  PsDscRunAsCredential  = $Credential
}

在此之前,请阅读Securing the MOF File.