Данный модуль предоставляет набор командлет для автоматизации ряда операций с локальными группами безопасности.
Для сборки модуля использую проект psake. Для инициирования сборки используйте сценарий build.ps1
.
Для модульных тестов использую проект pester.
Версия модуля: 2.0.0
Возвращает локальную группу безопасности.
Get-Group -Sid <Object> <CommonParameters>
Get-Group [-Filter <String>] [-Description <String>] <CommonParameters>
Get-Group [[-Name] <String>] <CommonParameters>
Создаёт локальную группу безопасности.
New-Group [-Name] <String> [-Description <String>] [-PassThru] [-WhatIf] [-Confirm] <CommonParameters>
Удаляет локальную группу безопасности.
Remove-Group -Sid <Object> [-WhatIf] [-Confirm] <CommonParameters>
Remove-Group [-Name] <String> [-WhatIf] [-Confirm] <CommonParameters>
Remove-Group -Identity <GroupPrincipal> [-WhatIf] [-Confirm] <CommonParameters>
Переименовывает локальную группу безопасности.
Rename-Group -Identity <GroupPrincipal> [-NewName] <String> [-PassThru] [-WhatIf] [-Confirm] <CommonParameters>
Rename-Group [-Name] <String> [-NewName] <String> [-PassThru] [-WhatIf] [-Confirm] <CommonParameters>
Rename-Group -Sid <Object> [-NewName] <String> [-PassThru] [-WhatIf] [-Confirm] <CommonParameters>
Проверяет наличие локальной группы безопасности.
Test-Group -Sid <Object> <CommonParameters>
Test-Group [-Name] <String> <CommonParameters>
Добавляет учётные записи и/или группы в указанную локальную группу безопасности.
Add-GroupMember [-Group] <GroupPrincipal> -Member <Principal[]> [-PassThru] [-WhatIf] [-Confirm] <CommonParameters>
Add-GroupMember [-Group] <GroupPrincipal> -ADMember <ADAccount[]> [-PassThru] [-WhatIf] [-Confirm] <CommonParameters>
Add-GroupMember [-Group] <GroupPrincipal> -ADSIMember <DirectoryEntry[]> [-PassThru] [-WhatIf] [-Confirm] <CommonParameters>
Add-GroupMember [-Group] <GroupPrincipal> -OtherMember <Array> [-PassThru] [-WhatIf] [-Confirm] <CommonParameters>
Возвращает членов локальной группы безопасности.
Get-GroupMember [-Group] <GroupPrincipal> [-Recursive] <CommonParameters>
Удаляет учётные записи и/или группы из указанной локальной группы безопасности.
Remove-GroupMember [-Group] <GroupPrincipal> -Member <Principal[]> [-WhatIf] [-Confirm] <CommonParameters>
Remove-GroupMember [-Group] <GroupPrincipal> -ADMember <ADAccount[]> [-WhatIf] [-Confirm] <CommonParameters>
Remove-GroupMember [-Group] <GroupPrincipal> -ADSIMember <DirectoryEntry[]> [-WhatIf] [-Confirm] <CommonParameters>
Remove-GroupMember [-Group] <GroupPrincipal> -OtherMember <Array> [-WhatIf] [-Confirm] <CommonParameters>
Проверяет наличие учётных записей в указанной локальной группе безопасности.
Test-GroupMember [-Group] <GroupPrincipal> [-Recursive] <CommonParameters>
Test-GroupMember [-Group] <GroupPrincipal> -Member <Principal[]> [-Recursive] <CommonParameters>
Test-GroupMember [-Group] <GroupPrincipal> -ADMember <ADAccount[]> [-Recursive] <CommonParameters>
Test-GroupMember [-Group] <GroupPrincipal> -ADSIMember <DirectoryEntry[]> [-Recursive] <CommonParameters>
Test-GroupMember [-Group] <GroupPrincipal> -OtherMember <Array> [-Recursive] <CommonParameters>
Get-Group возвращает локальную группу (или группы) безопасности с указанными параметрами.
Get-LocalGroup
Get-Group -Sid <Object> <CommonParameters>
Get-Group [-Filter <String>] [-Description <String>] <CommonParameters>
Get-Group [[-Name] <String>] <CommonParameters>
[String] Filter
Идентификатор группы безопасности
*
[String] Description
Описание искомой группы безопасности
[String] Name
Идентификатор группы безопасности
[Object] Sid
Идентификатор безопасности искомой группы безопасности
[System.Security.Principal.SecurityIdentifier]
<CommonParameters>
Этот командлет поддерживает общие параметры: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer и OutVariable. Для получения дополнительных сведений см. раздел
about_CommonParameters.
Возвращает все локальные группы безопасности.
Get-Group -Filter '*';
Возвращает группу безопасности Пользователи.
Get-Group -Name 'Пользователи';
Возвращает локальные группы безопасности: Администраторы и другие, имена которых начинаются на 'Адм'.
Get-Group -Filter 'Адм*';
New-Group создаёт локальную группу безопасности с указанными аттрибутами.
New-LocalGroup
New-Group [-Name] <String> [-Description <String>] [-PassThru] [-WhatIf] [-Confirm] <CommonParameters>
[String] Name
Идентификатор группы безопасности
[String] Description
Описание группы безопасности
[SwitchParameter] PassThru
Передавать ли созданные группы далее по конвейеру
[SwitchParameter] WhatIf
[SwitchParameter] Confirm
<CommonParameters>
Этот командлет поддерживает общие параметры: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer и OutVariable. Для получения дополнительных сведений см. раздел
about_CommonParameters.
Создаёт локальную группу безопасности.
New-Group -Name 'MyUsers' -Description 'Users of my application';
Remove-Group удаляет локальную группу (или группы) безопасности, переданную по конвейеру.
Remove-LocalGroup
Remove-Group -Sid <Object> [-WhatIf] [-Confirm] <CommonParameters>
Remove-Group [-Name] <String> [-WhatIf] [-Confirm] <CommonParameters>
Remove-Group -Identity <GroupPrincipal> [-WhatIf] [-Confirm] <CommonParameters>
[String] Name
Идентификатор группы безопасности
[Object] Sid
Идентификатор безопасности искомой группы безопасности
[System.Security.Principal.SecurityIdentifier]
[GroupPrincipal] Identity
Группа безопасности к удалению
Идентификатор группы безопасности
[SwitchParameter] WhatIf
[SwitchParameter] Confirm
<CommonParameters>
Этот командлет поддерживает общие параметры: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer и OutVariable. Для получения дополнительных сведений см. раздел
about_CommonParameters.
Удаляет группы безопасности, имена которых начинаются с 'test'.
Get-Group -Filter 'test*' | Remove-Group -Verbose;
Rename-Group переименовывает локальную группу безопасности, переданную по конвейеру.
Rename-LocalGroup
Rename-Group -Identity <GroupPrincipal> [-NewName] <String> [-PassThru] [-WhatIf] [-Confirm] <CommonParameters>
Rename-Group [-Name] <String> [-NewName] <String> [-PassThru] [-WhatIf] [-Confirm] <CommonParameters>
Rename-Group -Sid <Object> [-NewName] <String> [-PassThru] [-WhatIf] [-Confirm] <CommonParameters>
[String] Name
Идентификатор группы безопасности к переименованию
[Object] Sid
Идентификатор безопасности искомой группы безопасности для переименования
[System.Security.Principal.SecurityIdentifier]
[GroupPrincipal] Identity
Группа безопасности к переименованию
[String] NewName
Новый идентификатор группы безопасности
[SwitchParameter] PassThru
Передавать ли переименованные группы далее по конвейеру
[SwitchParameter] WhatIf
[SwitchParameter] Confirm
<CommonParameters>
Этот командлет поддерживает общие параметры: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer и OutVariable. Для получения дополнительных сведений см. раздел
about_CommonParameters.
Переименуем группу 'test' в 'test2'.
Get-Group 'test' | Rename-Group -NewName 'test2' -Verbose;
Переименуем группу 'test' в 'test2'.
Rename-Group -Identity (Get-Group 'test') -NewName 'test2' -WhatIf;
Переименуем группу 'test' в 'test2'.
Rename-Group 'test' 'test2' -Verbose;
Проверяет наличие локальной группы безопасности.
Test-LocalGroup
Test-Group -Sid <Object> <CommonParameters>
Test-Group [-Name] <String> <CommonParameters>
[String] Name
Идентификатор группы безопасности
[Object] Sid
Идентификатор безопасности искомой группы безопасности
[System.Security.Principal.SecurityIdentifier]
<CommonParameters>
Этот командлет поддерживает общие параметры: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer и OutVariable. Для получения дополнительных сведений см. раздел
about_CommonParameters.
Добавляет учётные записи и/или группы в указанную локальную группу безопасности.
В качестве добавляемых учётных записей и групп могут быть использованы как локальные
учётные записи / группы, так и доменные учётные записи / группы (Get-ADUser
,
Get-ADGroup
).
Add-LocalGroupMember
Add-GroupMember [-Group] <GroupPrincipal> -Member <Principal[]> [-PassThru] [-WhatIf] [-Confirm] <CommonParameters>
Add-GroupMember [-Group] <GroupPrincipal> -ADMember <ADAccount[]> [-PassThru] [-WhatIf] [-Confirm] <CommonParameters>
Add-GroupMember [-Group] <GroupPrincipal> -ADSIMember <DirectoryEntry[]> [-PassThru] [-WhatIf] [-Confirm] <CommonParameters>
Add-GroupMember [-Group] <GroupPrincipal> -OtherMember <Array> [-PassThru] [-WhatIf] [-Confirm] <CommonParameters>
[GroupPrincipal] Group
Группа безопасности
[Principal[]] Member
Объект безопасности для добавления в группу
[ADAccount[]] ADMember
Объект безопасности AD для добавления в группу
[DirectoryEntry[]] ADSIMember
Объект безопасности ADSI для добавления в группу
[Array] OtherMember
Объект безопасности в любом из трёх выше указанных типов для добавления в группу
Использовать данный параметр стоит только для обеспечения совместимости при переходе
от использования одного набора классов к другому.
[SwitchParameter] PassThru
Передавать ли учётную запись далее по конвейеру
[SwitchParameter] WhatIf
[SwitchParameter] Confirm
<CommonParameters>
Этот командлет поддерживает общие параметры: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer и OutVariable. Для получения дополнительных сведений см. раздел
about_CommonParameters.
Добавляем указанного пользователя домена в локальную группы безопасности "Пользователи".
Get-ADUser 'admin-sergey.s.betke' | Add-GroupMember -Group ( Get-Group -Name Пользователи );
Добавляем указанного локального пользователя в локальную группы безопасности "Пользователи".
Get-ADGroup 'Администраторы' | Add-GroupMember -Group ( Get-Group -Name Пользователи );
Get-GroupMember возвращает членов указанной локальной группы безопасности.
В том числе - и с учётом транзитивности при указании флага -Recursive
Get-LocalGroupMember
Get-GroupMember [-Group] <GroupPrincipal> [-Recursive] <CommonParameters>
[GroupPrincipal] Group
Группа безопасности
[SwitchParameter] Recursive
Запросить членов группы с учётом транзитивности
<CommonParameters>
Этот командлет поддерживает общие параметры: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer и OutVariable. Для получения дополнительных сведений см. раздел
about_CommonParameters.
Возвращает всех членов группы Пользователи с учётом транзитивности.
Get-Group -Name Пользователи | Get-LocalGroupMember -Recursive;
Удаляет учётные записи и/или группы из указанной локальной группы безопасности.
В качестве удаляемых членов могут быть использованы как локальные
учётные записи / группы, так и доменные учётные записи / группы (Get-ADUser
,
Get-ADGroup
).
Remove-LocalGroupMember
Remove-GroupMember [-Group] <GroupPrincipal> -Member <Principal[]> [-WhatIf] [-Confirm] <CommonParameters>
Remove-GroupMember [-Group] <GroupPrincipal> -ADMember <ADAccount[]> [-WhatIf] [-Confirm] <CommonParameters>
Remove-GroupMember [-Group] <GroupPrincipal> -ADSIMember <DirectoryEntry[]> [-WhatIf] [-Confirm] <CommonParameters>
Remove-GroupMember [-Group] <GroupPrincipal> -OtherMember <Array> [-WhatIf] [-Confirm] <CommonParameters>
Get-ADUser
, Get-ADGroup
).[GroupPrincipal] Group
Группа безопасности
[Principal[]] Member
Объект безопасности для удаления из группы
[ADAccount[]] ADMember
Объект безопасности AD для удаления из группы
[DirectoryEntry[]] ADSIMember
Объект безопасности ADSI для добавления в группу
[Array] OtherMember
Объект безопасности в любом из трёх выше указанных типов для добавления в группу
Использовать данный параметр стоит только для обеспечения совместимости при переходе
от использования одного набора классов к другому.
[SwitchParameter] WhatIf
[SwitchParameter] Confirm
<CommonParameters>
Этот командлет поддерживает общие параметры: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer и OutVariable. Для получения дополнительных сведений см. раздел
about_CommonParameters.
Удаляем указанного пользователя домена из локальной группы безопасности "Пользователи".
Get-ADUser 'admin-sergey.s.betke' | Remove-GroupMember -Group ( Get-LocalGroup -Name Пользователи ) -Verbose;
Удаляем указанного пользователя домена из локальной группы безопасности "Пользователи".
Remove-GroupMember -Group ( Get-LocalGroup -Name Пользователи ) -OtherMember ( Get-ADUser 'admin-sergey.s.betke' ) -Verbose;
Test-GroupMember проверяет наличие учётных записей в указанной
локальной группе безопасности.
В том числе - и с учётом транзитивности при указании флага -Recursive
Test-LocalGroupMember
Test-GroupMember [-Group] <GroupPrincipal> [-Recursive] <CommonParameters>
Test-GroupMember [-Group] <GroupPrincipal> -Member <Principal[]> [-Recursive] <CommonParameters>
Test-GroupMember [-Group] <GroupPrincipal> -ADMember <ADAccount[]> [-Recursive] <CommonParameters>
Test-GroupMember [-Group] <GroupPrincipal> -ADSIMember <DirectoryEntry[]> [-Recursive] <CommonParameters>
Test-GroupMember [-Group] <GroupPrincipal> -OtherMember <Array> [-Recursive] <CommonParameters>
$true
) или отсутствие ( $false
) указанных объектов в указанной группе[GroupPrincipal] Group
Группа безопасности
[Principal[]] Member
Объект безопасности для проверки членства в группе
[ADAccount[]] ADMember
Объект безопасности AD для проверки членства в группе
[DirectoryEntry[]] ADSIMember
Объект безопасности ADSI для проверки членства в группе
[Array] OtherMember
Объект безопасности в любом из трёх выше указанных типов для проверки членства в группе.
Использовать данный параметр стоит только для обеспечения совместимости при переходе
от использования одного набора классов к другому.
[SwitchParameter] Recursive
Запросить членов группы с учётом транзитивности
<CommonParameters>
Этот командлет поддерживает общие параметры: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer и OutVariable. Для получения дополнительных сведений см. раздел
about_CommonParameters.
Проверяем, является ли пользователь username
членом локальной группы безопасности
Пользователи с учётом транзитивности.
Get-ADUser 'admin-sergey.s.betke' | Test-GroupMember -Group ( Get-Group -Name Пользователи ) -Recursive;
Проверяем, является ли пользователь username
членом локальной группы безопасности
Пользователи.
Test-GroupMember -Group ( Get-Group -Name Пользователи ) -Member (Get-ADUser 'admin-sergey.s.betke');
Проверяем, является ли пользователь username
членом локальной группы безопасности
Пользователи с учётом транзитивности.
( [ADSI]'WinNT://csm/admin-sergey.s.betke' ) | Test-GroupMember -Group ( Get-Group -Name Пользователи );
Генератор: ITG.Readme.