Upravljajte AD grupama pomoću PowerShell-a

U ovom ćemo članku razmotriti sposobnost PowerShell-a da upravlja skupinama domena Active Directory. Pogledati ćemo kako stvoriti novu grupu u AD-u, dodati korisnike u nju (ili je izbrisati), navesti grupne korisnike i neke druge korisne radnje s grupama domena, koje su izuzetno korisne u svakodnevnoj administraciji. Sljedeći osnovni cmdleti dostupni su za upravljanje AD grupama u PowerShell-u za Active Directory:

sadržaj:

  • Nova ADGroup - stvorite novu AD grupu
  • Add-AdGroupMember - dodajte korisnike u grupu oglasa
  • Remove-ADGroupMember - uklanja korisnike iz grupe
  • Get-ADGroup - dobijte informacije o grupi AD
  • Get-ADGroupMember - popis korisnika AD grupe

Za upotrebu ovih cmdleta u PowerShell sesiji mora biti učitan poseban AD interakcijski modul - Modul aktivnog imenika za Windows PowerShell. Ovaj je modul prvi put predstavljen u sustavu Windows Server 208 R2. U sustavu Windows Server 2012 i novijima ovaj je modul prema zadanim postavkama omogućen. Može se instalirati i omogućiti na klijentskim računalima kao jedna od RSAT komponenti. Možete provjeriti je li modul učitan na sljedeći način:

Dostupni modul s popisom Get-module

Kao što vidite, učitava se modul ActiveDirectory. Ako ne, uvezite ga naredbom:

Uvoz-modul aktivni direktorij

Potpuni popis naredbi modula može se dobiti ovako:

Get-Command -Module ActiveDirectory

Modul sadrži ukupno 147 cmdleta, od kojih 11 može raditi s grupama.

Get-Command -Module ActiveDirectory -Name "* Grupa *"

Slijedi njihov popis:

  • Add-ADGroupMember
  • Add-ADPrincipalGroupMembership
  • Get-ADAccountAuthorizationGroup
  • Get-adgroup
  • Get-ADGroupMember
  • Get-ADPrincipalGroupMembership
  • Novo-adgroup
  • Uklonite-adgroup
  • Uklonite-ADGroupMember
  • Uklonite-ADPrincipalGroupMembership
  • Set-adgroup

Nova ADGroup - stvorite novu AD grupu

Stvorite novu grupu u navedenom spremniku Active Directory (OU) pomoću naredbe Novo-adgroup:

Nova-ADGroup "TestADGroup" -path "OU = Grupe, OU = Moskva, DC = corp, dc = winitpro, DC = ru" -GroupScope Global -PassThru -Verbose

Korištenje atributa opis možete odrediti opis grupe i sa DisplayName promijeni prikazno ime.

parametar GroupScope Možete odrediti jednu od sljedećih vrsta grupa:

  • 0 = DomainLocal
  • 1 = Global
  • 2 = Univerzalno

Grupu distribucije možete stvoriti na sljedeći način:

Nova-ADGroup "TestADGroup-Distr" -path "OU = Grupe, OU = Moskva, DC = corp, dc = winitpro, DC = ru" -GroupKategorija distribucije -GroupScope Global -PassThru -Verbose

Add-AdGroupMember - dodajte korisnike u grupu oglasa

Korisnike možete dodati u grupu aktivnih direktorija pomoću cmdleta Add.-AdGroupMember. Dodajte dva korisnika u novu grupu:

Add-AdGroupMember -Identity TestADGroup -Članovi user1, user2

Ako je popis korisnika koje želite dodati u grupu prilično velik, popis računa možete spremiti u CSV datoteku, a zatim uvesti ovu datoteku i dodati svakog korisnika u grupu..

Format CSV datoteke je sljedeći (popis korisnika jedan po retku, naziv stupca - korisnici)

Uvezi-CSV. \ Users.csv -Header korisnici | ForEach-Oblik Add-AdGroupMember -Identity 'TestADGroup' -članovi $ _. Korisnici

Da biste dobili sve članove jedne grupe (groupA) i dodali ih u drugu skupinu (groupB), koristite ovu naredbu:

Get-ADGroupMember "Grupa A" | Get-ADUser | ForEach-Oblik Add-ADGroupMember -Identity "Grupa-B" -Članovi $ _

Ako želite kopirati članove svih ugniježđenih grupa (rekurzivno) u novu grupu, trebate koristiti sljedeću naredbu:

Get-ADGroupMember -Identitet "GroupA" -Recursive | Get-ADUser | ForEach-Objekt Add-ADGroupMember -Identity "GroupB" -Članovi $ _

Remove-ADGroupMember - uklanja korisnike iz grupe

Da biste korisnike uklonili iz AD grupe, morate koristiti naredbu Remove-ADGroupMember. Iz grupe uklanjamo dva korisnika:

Remove-ADGroupMember -Identity TestADGroup -Članovi user1, user2

Potvrdite uklanjanje korisnika iz grupe:

Ako želite ukloniti iz korisničke grupe popis iz CSV datoteke, koristite ovu naredbu:

Uvezi-CSV. \ Users.csv -Header korisnici | ForEach-Oblik Remove-ADGroupMember -Identity 'TestADGroup' -članovi $ _. Korisnici

Get-ADGroup - dobijte informacije o grupi AD

Cmdlet će vam pomoći pri dobivanju informacija o grupi. Get-adgroup:

Get-ADGroup 'TestADGroup'

Ova naredba prikazuje informacije o osnovnim atributima grupe (DN, vrsta grupe, ime, SID). Za prikaz vrijednosti svih atributa grupe domena AD pokrenite sljedeću naredbu:

Get-ADGroup 'TestADGroup'-svojstva *

Kao što vidite, sada atributi poput stvaranja i modifikacije grupe, vremena, opisa itd..

Pomoću cmdleta Get-ADGroup možete pronaći sve grupe koje vas zanimaju prema određenom predlošku. Na primjer, trebate pronaći sve AD grupe čije ime sadrži frazu admini :

Get-ADGroup -LDAPFilter "(ime = * admini *)" | Format-tablica

Get-ADGroupMember - popis korisnika AD grupe

Prikaži popis korisnika grupe:

Get-ADGroupMember 'TestADGroup'

Da biste u rezultatima ostavili samo korisnička imena, učinite:

Get-ADGroupMember 'TestADGroup' | ft ime

Ako su ostale grupe domena uključene u ovu grupu, za prikaz punog popisa članova, uključujući sve ugniježđene grupe, upotrijebite parametar Rekurzivno.

Get-ADGroupMember 'server-admins' -recursive | ft ime

Da biste prenijeli popis računa koji se nalaze u određenoj grupi u CSV datoteku (za daljnju upotrebu u Excelu), pokrenite sljedeću naredbu:

Get-ADGroupMember 'server-admins' -recursive | ft samaccountname | Datoteka c: \ ps \ admins.csv

Da biste dodali podatke korisničkog računa u AD-u u tekstnu datoteku, koristite cmdlet Get-ADUser. Na primjer, pored računa, morate prikazati položaj i telefonski broj korisnika u grupi:

Get-ADGroupMember -Identity 'server-admins' -recursive | foreach Get-ADUser $ _-naslov svojstva, OfficePhone | Naziv objekta, OfficePhone

Možete izračunati broj korisnika u grupi poput ove:

(Get-ADGroupMember -Identity "domena administratora")

Pokazalo se da u grupi "administrator domene" imamo 7 administrativnih računa.

Da biste pronašli popis praznih grupa u određenom OU, koristite ovu naredbu:

Get-ADGroup -Filter * -Properties Members -search baza „OU = Moskva, DC = corp, dc = winitpro, DC = en“ | gdje su -not $ _. members | odaberite Ime