DSC GroupSet 리소스DSC GroupSet Resource

적용 대상: Windows PowerShell 5.0Applies To: Windows PowerShell 5.0

Windows PowerShell DSC(필요한 상태 구성)의 GroupSet 리소스에서는 대상 노드에 있는 로컬 그룹을 관리하는 메커니즘을 제공합니다.The GroupSet resource in Windows PowerShell Desired State Configuration (DSC) provides a mechanism to manage local groups on the target node. 이 리소스는 GroupName 매개 변수에 지정된 각 그룹에 대해 그룹 리소스를 호출하는 복합 리소스입니다.This resource is a composite resource that calls the Group resource for each group specified in the GroupName parameter.

두 개 이상의 그룹에서 동일한 구성원 목록을 추가 및/또는 제거하거나 두 개 이상의 그룹을 제거하거나 구성원 목록이 동일한 두 개 이상의 그룹을 추가하려는 경우 이 리소스를 사용합니다.Use this resource when you want to add and/or remove the same list of members to more than one group, remove more than one group, or add more than one group with the same list of members.

구문Syntax

Group [string] #ResourceName
{
    GroupName = [string[]]
    [ Ensure = [string] { Absent | Present }  ]
    [ MembersToInclude = [string[]] ]
    [ MembersToExclude = [string[]] ]
    [ Credential = [PSCredential] ]
    [ DependsOn = [string[]] ]
}

속성Properties

속성Property 설명Description
GroupNameGroupName 상태를 확인하려는 그룹의 이름입니다.The names of the groups for which you want to ensure a specific state.
MembersToExcludeMembersToExclude 그룹의 기존 구성원 자격에서 구성원을 제거하려면 이 속성을 사용합니다.Use this property to remove members from the existing membership of the groups. 이 속성의 값은 폼의 문자열 배열을 Domain\UserName 형식의 문자열 배열입니다.The value of this property is an array of strings of the form Domain\UserName. 구성에서 이 속성을 설정하는 경우 Members 속성을 사용하지 마세요.If you set this property in a configuration, do not use the Members property. 사용할 경우 오류가 발생합니다.Doing so will generate an error.
자격 증명Credential 원격 리소스에 액세스하는 데 필요한 자격 증명입니다.The credentials required to access remote resources. 참고: 이 계정에 로컬이 아닌 모든 계정을 그룹에 추가할 수 있는 Active Directory 권한이 있어야 합니다. 그렇지 않으면 오류가 발생합니다.Note: This account must have the appropriate Active Directory permissions to add all non-local accounts to the group; otherwise, an error will occur.
EnsureEnsure 그룹이 있는지 여부를 나타냅니다.Indicates whether the groups exist. 그룹이 존재하지 않도록 하려면 이 속성을 "Absent"로 설정합니다.Set this property to "Absent" to ensure that the groups do not exist. 그룹이 존재하도록 하려면 이 속성을 "Present"(기본값)로 설정합니다.Setting it to "Present" (the default value) ensures that the groups exist.
구성원Members 현재 그룹 구성원 자격을 지정된 구성원으로 바꾸려면 이 속성을 사용합니다.Use this property to replace the current group membership with the specified members. 이 속성의 값은 폼의 문자열 배열을 Domain\UserName 형식의 문자열 배열입니다.The value of this property is an array of strings of the form Domain\UserName. 구성에서 이 속성을 설정하는 경우 MembersToExclude 또는 MembersToInclude 속성을 사용하지 마세요.If you set this property in a configuration, do not use either the MembersToExclude or MembersToInclude property. 사용할 경우 오류가 발생합니다.Doing so will generate an error.
MembersToIncludeMembersToInclude 그룹의 기존 구성원 자격에 구성원을 추가하려면 이 속성을 사용합니다.Use this property to add members to the existing membership of the group. 이 속성의 값은 폼의 문자열 배열을 Domain\UserName 형식의 문자열 배열입니다.The value of this property is an array of strings of the form Domain\UserName. 구성에서 이 속성을 설정하는 경우 Members 속성을 사용하지 마세요.If you set this property in a configuration, do not use the Members property. 사용할 경우 오류가 발생합니다.Doing so will generate an error.
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"``.

예제 1: 그룹이 있는지 확인Example 1: Ensuring Groups are present

다음 예제에서는 "myGroup" 및 "myOtherGroup"이라는 두 그룹이 있는지 확인하는 방법을 보여 줍니다.The following example shows how to ensure that two groups called "myGroup" and "myOtherGroup" are present.

configuration GroupSetTest
{
    Import-DscResource -ModuleName PSDesiredStateConfiguration
    Node localhost
    {
        GroupSet GroupSetTest
        {
            GroupName        = @("myGroup", "myOtherGroup")
            Ensure           = "Present"
            MembersToInclude = @("contoso\alice", "contoso\bob")
            MembersToExclude = $("contoso\john")
            Credential       = Get-Credential
        }
    }
}
$cd = @{
    AllNodes = @(
        @{
            NodeName                    = 'localhost'
            PSDscAllowPlainTextPassword = $true
            PSDscAllowDomainUser        = $true
        }
    )
}

GroupSetTest -ConfigurationData $cd

참고

이 예제에서는 편의상 일반 텍스트 자격 증명을 사용합니다.This example uses plaintext credentials for simplicity. 구성 MOF 파일에서 자격 증명을 암호화하는 방법에 대한 자세한 내용은 MOF 파일 보안을 참조하세요.For information about how to encrypt credentials in the configuration MOF file, see Securing the MOF File.