DSC 레지스트리 리소스DSC Registry Resource

‘적용 대상: Windows PowerShell 4.0, Windows PowerShell 5.0’Applies To: Windows PowerShell 4.0, Windows PowerShell 5.0

PowerShell DSC(필요한 상태 구성)의 레지스트리 리소스에서는 대상 노드에 있는 레지스트리 키와 값을 관리하는 메커니즘을 제공합니다.The Registry resource in Windows PowerShell Desired State Configuration (DSC) provides a mechanism to manage registry keys and values on a target node.

구문Syntax

Registry [string] #ResourceName
{
    Key = [string]
    ValueName = [string]
    [ Ensure = [string] { Present | Absent }  ]
    [ Force =  [bool]   ]
    [ Hex = [bool] ]
    [ DependsOn = [string[]] ]
    [ ValueData = [string[]] ]
    [ ValueType = [string] { Binary | Dword | ExpandString | MultiString | Qword | String }  ]
}

속성Properties

속성Property 설명Description
Key 특정 상태를 확인하려는 레지스트리 키의 경로를 나타냅니다.Indicates the path of the registry key for which you want to ensure a specific state. 이 경로는 하이브를 포함해야 합니다.This path must include the hive.
ValueNameValueName 레지스트리 값의 이름을 나타냅니다.Indicates the name of the registry value. 레지스트리 키를 추가하거나 제거하려면 ValueType 또는 ValueData를 지정하지 않고 이 속성을 빈 문자열로 지정합니다.To add or remove a registry key, specify this property as an empty string without specifying ValueType or ValueData. 레지스트리 키의 기본값을 수정하거나 제거하려면 ValueType 또는 ValueData도 지정하고 이 속성을 빈 문자열로 지정합니다.To modify or remove the default value of a registry key, specify this property as an empty string while also specifying ValueType or ValueData.
EnsureEnsure 키와 값의 존재 여부를 나타냅니다.Indicates if the key and value exist. 존재하도록 하려면 이 속성을 "Present"으로 설정합니다.To ensure that they do, set this property to "Present". 존재하지 않도록 하려면 이 속성을 "Absent"으로 설정합니다.To ensure that they do not exist, set the property to "Absent". 기본값은 "Present"입니다.The default value is "Present".
ForceForce 지정된 레지스트리 키가 있을 경우, Force를 사용하면 새 값으로 덮어씁니다.If the specified registry key is present, Force overwrites it with the new value. 하위 키가 포함된 레지스트리 키를 삭제하는 경우에는 이 속성을 $true로 지정해야 합니다.If deleting a registry key with subkeys, this needs to be $true
HexHex 데이터가 16진수 형식으로 표현될 것인지 여부를 나타냅니다.Indicates if data will be expressed in hexadecimal format. 지정하는 경우 DWORD/QWORD 값 데이터가 16진수 형식으로 표시됩니다.If specified, the DWORD/QWORD value data is presented in hexadecimal format. 다른 형식에 대해서는 유효하지 않습니다.Not valid for other types. 기본값은 $false입니다.The default value is $false.
DependsOnDependsOn 이 리소스를 구성하려면 먼저 다른 리소스의 구성을 실행해야 함을 나타냅니다.Indicates that the configuration of another resource must run before this resource is configured. 예를 들어, 먼저 실행하려는 리소스 구성 스크립트 블록의 ID가 ResourceName이고 해당 형식이 ResourceType일 경우, 이 속성을 사용하기 위한 구문은 DependsOn = "[ResourceType]ResourceName"입니다.For example, if the ID of the resource configuration script block that you want to run first is ResourceName and its type is ResourceType, the syntax for using this property is DependsOn = "[ResourceType]ResourceName".
ValueDataValueData 레지스트리 값에 대한 데이터입니다.The data for the registry value.
ValueTypeValueType 값의 형식을 나타냅니다.Indicates the type of the value. 지원되는 형식: 문자열(REG_SZ), 이진(REG-BINARY), Dword 32비트(REG_DWORD), Qword 64비트(REG_QWORD), 다중 문자열(REG_MULTI_SZ), 확장 가능한 문자열(REG_EXPAND_SZ)The supported types are: String (REG_SZ), Binary (REG-BINARY), Dword 32-bit (REG_DWORD), Qword 64-bit (REG_QWORD), Multi-string (REG_MULTI_SZ), Expandable string (REG_EXPAND_SZ)

예제Example

이 예제에서는 "ExampleKey"라는 키가 HKEY_LOCAL_MACHINE 하이브에 있는지 확인합니다.This example ensures that a key named "ExampleKey" is present in the HKEY_LOCAL_MACHINE hive.

Configuration RegistryTest
{
    Registry RegistryExample
    {
        Ensure      = "Present"  # You can also set Ensure to "Absent"
        Key         = "HKEY_LOCAL_MACHINE\SOFTWARE\ExampleKey"
        ValueName   = "TestValue"
        ValueData   = "TestData"
    }
}

참고

HKEY\CURRENT\USER 하이브에서 레지스트리 설정을 변경하려면 구성이 시스템이 아닌 사용자 자격 증명을 사용하여 실행되어야 합니다.Changing a registry setting in the HKEY\CURRENT\USER hive requires that the configuration runs with user credentials, rather than as the system. PsDscRunAsCredential 속성을 사용하여 구성에 대한 사용자 자격 증명을 지정할 수 있습니다.You can use the PsDscRunAsCredential property to specify user credentials for the configuration. 예제는 사용자 자격 증명을 사용하여 DSC 실행을 참조하세요.For an example, see Running DSC with user credentials.