Compartilhar via


Remover membros de um grupo

Descrição

Este exemplo mostra como você pode usar o Group recurso para garantir que um grupo exista e exclua uma lista especificada de membros.

Com Ensure definido como Present e GroupName definido como GroupName1, o recurso adicionará o GroupName1 grupo local se ele não existir.

Com MembersToExclude definido como uma matriz de Username1 e Username2, o recurso remove Username1 e Username2 de GroupName1 se eles são membros. Ele ignora a associação de grupo de todas as outras contas.

Com Invoke-DscResource

Este script mostra como você pode usar o Group recurso com o Invoke-DscResource cmdlet para garantir que o grupo GroupName1 local exista e não inclua Username1 nem Username2 como membros.

[CmdletBinding()]
param()

begin {
    $SharedParameters = @{
        Name       = 'Group'
        ModuleName = 'PSDscResource'
        Properties = @{
            GroupName        = 'GroupName1'
            Ensure           = 'Present'
            MembersToExclude = @(
                'Username1'
                'Username2'
            )
        }
    }

    $NonGetProperties = @(
        'Ensure'
        'MembersToExclude'
    )
}

process {
    $TestResult = Invoke-DscResource -Method Test @SharedParameters

    if ($TestResult.InDesiredState) {
        $QueryParameters = $SharedParameters.Clone()

        foreach ($Property in $NonGetProperties) {
            $QueryParameters.Properties.Remove($Property)
        }

        Invoke-DscResource -Method Get @QueryParameters
    } else {
        Invoke-DscResource -Method Set @SharedParameters
    }
}

Com uma configuração

Este snippet mostra como você pode definir um com um GroupConfiguration bloco de recursos para garantir que o grupo GroupName1 local exista e não inclua Username1 nem Username2 como membros.

Configuration RemoveMembers {
    Import-DscResource -ModuleName 'PSDscResources'

    Node localhost {
        Group ExampleGroup {
            GroupName        = 'GroupName1'
            Ensure           = 'Present'
            MembersToExclude = @(
                'Username1'
                'Username2'
            )
        }
    }
}