DSC 레지스트리 리소스
적용 대상: Windows PowerShell 4.0, Windows PowerShell 5.x
PowerShell DSC(필요한 상태 구성)의 레지스트리 리소스에서는 대상 노드에 있는 레지스트리 키와 값을 관리하는 메커니즘을 제공합니다.
참고
이 DSC 리소스에 대한 이 설명서에서는 버전 7.2 이전의 PowerShell에 포함된 버전을 다룹니다. PSDscResources 모듈에는 Microsoft에서 공식적으로 지원하는 새 DSC 리소스와 업데이트된 DSC 리소스가 포함되어 있습니다. PSDscResources 모듈은 PowerShell 갤러리에서 사용할 수 있습니다.
자세한 내용 및 업데이트된 설명서는 PSDscResources 참조 설명서를 참조하세요.
구문
Registry [string] #ResourceName
{
Key = [string]
ValueName = [string]
[ Force = [bool] ]
[ Hex = [bool] ]
[ ValueData = [string[]] ]
[ ValueType = [string] { Binary | Dword | ExpandString | MultiString | Qword | String } ]
[ DependsOn = [string[]] ]
[ Ensure = [string] { Present | Absent } ]
[ PsDscRunAsCredential = [PSCredential] ]
}
속성
속성 | Description |
---|---|
키 | 특정 상태를 확인하려는 레지스트리 키의 경로를 나타냅니다. 이 경로는 하이브를 포함해야 합니다. |
ValueName | 레지스트리 값의 이름을 나타냅니다. 레지스트리 키를 추가하거나 제거하려면 ValueType 또는 ValueData를 지정하지 않고 이 속성을 빈 문자열로 지정합니다. 레지스트리 키의 기본값을 수정하거나 제거하려면 ValueType 또는 ValueData도 지정하고 이 속성을 빈 문자열로 지정합니다. |
Force | 지정된 레지스트리 키가 있을 경우, Force를 사용하면 새 값으로 덮어씁니다. 하위 키가 포함된 레지스트리 키를 삭제하는 경우에는 이 속성을 $true 로 지정해야 합니다. |
Hex | 데이터가 16진수 형식으로 표현될 것인지 여부를 나타냅니다. 지정하는 경우 DWORD/QWORD 값 데이터가 16진수 형식으로 표시됩니다. 다른 형식에 대해서는 유효하지 않습니다. 기본값은 $false 입니다. |
ValueData | 레지스트리 값에 대한 데이터입니다. |
ValueType | 값의 형식을 나타냅니다. 지원되는 형식은 문자열 (REG_SZ), 이진 (REG_BINARY), Dword (32비트 REG_DWORD), Qword (64비트 REG_QWORD), MultiString (REG_MULTI_SZ), ExpandString (REG_EXPAND_SZ)입니다. |
공용 속성
속성 | Description |
---|---|
DependsOn | 이 리소스를 구성하려면 먼저 다른 리소스의 구성을 실행해야 함을 나타냅니다. 예를 들어, 먼저 실행하려는 리소스 구성 스크립트 블록의 ID가 ResourceName이고 해당 형식이 ResourceType일 경우, 이 속성을 사용하기 위한 구문은 DependsOn = "[ResourceType]ResourceName" 입니다. |
Ensure | 키와 값의 존재 여부를 나타냅니다. 존재하도록 하려면 이 속성을 Present로 설정합니다. 존재하지 않도록 하려면 이 속성을 Absent로 설정합니다. 기본값은 Present입니다. |
PsDscRunAsCredential | 전체 리소스를 실행하기 위한 자격 증명을 설정합니다. |
참고
PsDscRunAsCredential 공용 속성은 다른 자격 증명의 컨텍스트에서 DSC 리소스를 실행할 수 있도록 WMF 5.0에 추가되었습니다. 자세한 내용은 DSC 리소스로 자격 증명 사용을 참조하세요.
예
예제 1: 지정된 값과 데이터가 지정된 레지스트리 키에 있는지 확인
이 예에서는 "ExampleKey1" 라는 키에 속하는 레지스트리 값 "TestValue"가 HKEY\_LOCAL\_MACHINE
하이브에 있고 데이터 "TestData"가 있는지 확인합니다.
Configuration RegistryTest
{
Import-DscResource -ModuleName 'PSDesiredStateConfiguration'
Registry RegistryExample
{
Ensure = "Present" # You can also set Ensure to "Absent"
Key = "HKEY_LOCAL_MACHINE\SOFTWARE\ExampleKey1"
ValueName = "TestValue"
ValueData = "TestData"
}
}
예제 2: 지정된 레지스트리 키가 존재하는지 확인
이 예제에서는 "ExampleKey2"라는 키가 HKEY_LOCAL_MACHINE 하이브에 있는지 확인합니다.
Configuration RegistryTest
{
Import-DscResource -ModuleName 'PSDesiredStateConfiguration'
Registry RegistryExample
{
Ensure = "Present" # You can also set Ensure to "Absent"
Key = "HKEY_LOCAL_MACHINE\SOFTWARE\ExampleKey2"
ValueName = ""
}
}
참고
HKEY_CURRENT_USER
하이브에서 레지스트리 설정을 변경하려면 구성이 시스템이 아닌 사용자 자격 증명을 사용하여 실행되어야 합니다. PsDscRunAsCredential 속성을 사용하여 구성에 대한 사용자 자격 증명을 지정할 수 있습니다. 예제는 사용자 자격 증명을 사용하여 DSC 실행을 참조하세요.