V tomto článku sa zameriame na schopnosť spoločnosti PowerShell spravovať skupiny domén Active Directory. Budeme skúmať, ako vytvoriť novú skupinu v službe AD, pridať do nej používateľov (alebo ju odstrániť), uviesť používateľov skupiny a niektoré ďalšie užitočné akcie so skupinami domén, ktoré sú mimoriadne užitočné pri každodennej správe. Nasledujúce základné rutiny cmdlet sú dostupné pre správu AD skupín v PowerShell pre Active Directory:
obsah:
- New-ADGroup - vytvorte novú skupinu AD
- Add-AdGroupMember - pridanie používateľov do skupiny AD
- Remove-ADGroupMember - odstránenie používateľov zo skupiny
- Get-ADGroup - získajte informácie o skupine AD
- Get-ADGroupMember - zoznam používateľov skupiny AD
Ak chcete tieto rutiny cmdlet použiť vo svojej relácii PowerShell, musíte načítať špeciálny modul interakcie AD - Modul Active Directory pre Windows PowerShell. Tento modul bol prvýkrát predstavený v systéme Windows Server 208 R2. V systéme Windows Server 2012 a novšom je tento modul predvolene povolený. Môže byť nainštalovaný a povolený na klientskych počítačoch ako jeden z komponentov RSAT. Skontrolujte, či je modul načítaný nasledovne:
Získajte modul modulu -listavailable
Ako vidíte, modul ActiveDirectory sa načíta. Ak nie, importujte ho pomocou príkazu:
Adresár importovaného modulu
Kompletný zoznam príkazov modulu je možné získať takto:
Get-Command - Modul ActiveDirectory
Modul obsahuje celkom 147 cmdletov, z ktorých 11 môže pracovať so skupinami.
Get-Command - Modul ActiveDirectory - Meno "* Skupina *"
Tu je ich zoznam:
- Add-ADGroupMember
- Add-ADPrincipalGroupMembership
- Get-ADAccountAuthorizationGroup
- Get-reklamnísestava
- Get-ADGroupMember
- Get-ADPrincipalGroupMembership
- New-reklamnísestava
- Remove-reklamnísestava
- Remove-ADGroupMember
- Remove-ADPrincipalGroupMembership
- Set-reklamnísestava
New-ADGroup - vytvorte novú skupinu AD
Pomocou príkazu vytvorte novú skupinu v určenom kontajneri služby Active Directory (OU) New-reklamnísestava:
New-ADGroup "TestADGroup" - cesta 'OU = Skupiny, OU = Moskva, DC = corp, dc = winitpro, DC = ru' -GroupScope Global -PassThru -Verbose
Použitie atribútu popis môžete zadať popis skupiny a pomocou DisplayName zmeniť zobrazovaný názov.
parameter GroupScope Môžete zadať jeden z nasledujúcich typov skupín:
- 0 = DomainLocal
- 1 = globálne
- 2 = univerzálny
Distribučnú skupinu môžete vytvoriť nasledovne:
New-ADGroup "TestADGroup-Distr" - cesta 'OU = Skupiny, OU = Moskva, DC = corp, dc = winitpro, DC = ru' -GroupKategória Distribúcia -GroupScope Global -PassThru -Verbose
Add-AdGroupMember - pridanie používateľov do skupiny AD
Používateľov môžete pridať do skupiny Active Directory pomocou cmdlet Pridať.-AdGroupMember. Pridajte dvoch používateľov do novej skupiny:
Add-AdGroupMember -Identity TestADGroup -Members user1, user2
Ak je zoznam používateľov, ktorých chcete pridať do skupiny, pomerne veľký, môžete zoznam účtov uložiť do súboru CSV, potom tento súbor importovať a pridať každého používateľa do skupiny..
Formát súboru CSV je nasledujúci (zoznam používateľov jeden na riadok, názov stĺpca - používatelia)
Import-CSV. \ Users.csv - Používatelia čítačky | ForEach-Object Add-AdGroupMember -Identity 'TestADGroup' -embembers $ _. Users
Ak chcete získať všetkých členov jednej skupiny (skupina A) a pridať ich do inej skupiny (skupina B), použite tento príkaz:
Get-ADGroupMember “GroupA” | Get-ADUser | ForEach-Object Add-ADGroupMember -Identity „Group-B“ - Členovia $ _
Ak chcete skopírovať členov všetkých vnorených skupín (rekurzívne) do novej skupiny, musíte použiť nasledujúci príkaz:
Get-ADGroupMember -Identity “GroupA” -Recursive | Get-ADUser | ForEach-Object Add-ADGroupMember -Identity „GroupB“ - Členovia $ _
Remove-ADGroupMember - odstránenie používateľov zo skupiny
Ak chcete odstrániť používateľov zo skupiny AD, musíte použiť príkaz Remove-ADGroupMember. Zo skupiny odstránime dvoch používateľov:
Remove-ADGroupMember -Identity TestADGroup -Members user1, user2
Potvrďte odstránenie používateľov zo skupiny:
Ak chcete zo skupiny používateľov odstrániť zoznam zo súboru CSV, použite tento príkaz:
Import-CSV. \ Users.csv - Používatelia čítačky | ForEach-Object Remove-ADGroupMember --Identity 'TestADGroup' -embembers $ _. Users
Get-ADGroup - získajte informácie o skupine AD
Rutina pomôže získať informácie o skupine. Get-reklamnísestava:
Get-ADGroup 'TestADGroup'
Tento príkaz zobrazí informácie o základných atribútoch skupiny (DN, typ skupiny, názov, SID). Ak chcete zobraziť hodnotu všetkých atribútov skupiny domén AD, spustite nasledujúci príkaz:
Získajte produkty skupiny „TestADGroup“ v skupine AD-ADG *
Ako vidíte, teraz atribúty ako čas vytvorenia a úpravy skupiny, popis atď..
Pomocou rutiny Get-ADGroup môžete nájsť všetky skupiny, ktoré vás zaujímajú, pomocou konkrétnej šablóny. Napríklad musíte nájsť všetky AD skupiny, ktorých názov obsahuje frázu administrátori :
Get-ADGroup -LDAPFilter “(name = * admins *)” | Format-Table
Get-ADGroupMember - zoznam používateľov skupiny AD
Zobraziť zoznam používateľov skupiny:
Get-ADGroupMember 'TestADGroup'
Ak chcete vo výsledkoch ponechať iba používateľské mená, postupujte takto:
Get-ADGroupČlen 'TestADGroup' |. ft meno
Ak sú do tejto skupiny zahrnuté ďalšie skupiny domén, na zobrazenie úplného zoznamu členov vrátane všetkých vnorených skupín použite parameter rekurzívne.
Get-ADGroupMember 'server-admins -recursive | ft meno
Ak chcete nahrať zoznam účtov, ktoré sú v konkrétnej skupine, do súboru CSV (na ďalšie použitie v Exceli), spustite nasledujúci príkaz:
Get-ADGroupMember 'server-admins -recursive | ft samaccountname | Out-File c: \ ps \ admins.csv
Ak chcete pridať údaje používateľského účtu v AD do textového súboru, použite rutinu Get-ADUser. Napríklad musíte okrem účtu zobraziť aj pozíciu a telefónne číslo skupinového používateľa:
Get-ADGroupMember -Identity 'server-admins' -recursive | Foreach Get-ADUser $ _ -properties title, OfficePhone | Select-Object title, OfficePhone
Počet používateľov v skupine môžete vypočítať takto:
(Get-ADGroupMember --Identity 'administrátori domén')
Ukázalo sa, že v skupine „správcovia domén“ máme 7 správcovských účtov.
Ak chcete nájsť zoznam prázdnych skupín v konkrétnej organizačnej jednotke, použite tento príkaz:
Get-ADGroup -Filter * -Properties Members -searchbase “OU = Moscow, DC = corp, dc = winitpro, DC = en” | kde - no $ _. members | vyberte Meno