Skip to content

$cs.UsrMgr_EnumMembersOfLocalGroup

Returns the members of a local group. The group parameter accepts either a group name or a SID (a SID is resolved to a name internally before enumeration). Each returned object exposes the member’s identity as a caption/name string.

$cs.UsrMgr_EnumMembersOfLocalGroup(string group)

Name or SID of the local group to enumerate.

A Collection<PSObject> listing the members of the group.

Audit and log the current members of Administrators before making any changes, so the pre-install state is captured for troubleshooting:

Terminal window
$groupMembers = $cs.UsrMgr_EnumMembersOfLocalGroup('Administrators')
foreach ($item in $groupMembers) {
$cs.Job_WriteLog("Member found: $($item)")
}

Check whether a specific user is already a member of a group before adding them, to avoid redundant calls:

Terminal window
$members = $cs.UsrMgr_EnumMembersOfLocalGroup('S-1-5-32-544')
$alreadyMember = $members | Where-Object { $_.ToString() -like '*capaadmin*' }
if (-not $alreadyMember) {
$cs.Job_WriteLog("capaadmin is not yet a member of Administrators, adding it")
$cs.UsrMgr_AddUserToLocalGroup('capaadmin', 'S-1-5-32-544')
} else {
$cs.Job_WriteLog("capaadmin is already a member of Administrators, skipping")
}

$cs.UsrMgr_AddUserToLocalGroup $cs.UsrMgr_RemoveUserFromLocalGroup $cs.UsrMgr_GetNameBySid