إزالة أعضاء مجموعة

الوصف

يوضح هذا المثال كيفية استخدام Group المورد للتأكد من وجود مجموعة واستبعاد قائمة محددة من الأعضاء.

مع تعيين Ensure إلى Present وتعيين GroupName إلى GroupName1، يضيف GroupName1 المورد المجموعة المحلية إذا لم تكن موجودة.

مع تعيين MembersToExclude إلى صفيف من Username1 و Username2، يقوم المورد بإزالة Username1 و Username2 من GroupName1 إذا كانوا أعضاء. يتجاهل عضوية المجموعة لجميع الحسابات الأخرى.

مع Invoke-DscResource

يوضح هذا البرنامج النصي كيف يمكنك استخدام Group المورد مع Invoke-DscResource cmdlet للتأكد من وجود المجموعة GroupName1 المحلية ولا تتضمن Username1 أو Username2 كأعضاء.

[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
    }
}

مع تكوين

توضح هذه القصاصة البرمجية كيف يمكنك تعريف Configuration مع كتلة Group موارد للتأكد من وجود المجموعة GroupName1 المحلية ولا تتضمن Username1 أو Username2 كأعضاء.

Configuration RemoveMembers {
    Import-DscResource -ModuleName 'PSDscResources'

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