Kako doći do popisa odabranih AD grupa čiji su članovi veliki popis korisnika? Učitavanje podataka iz AD spremnika

Dobar dan, dragi čitatelji i pretplatnici, nastavljamo proučavati mogućnosti Powershell i Active Directory. Kao što se sjećate, svi njezini korisnički i računalni računi nalaze se u bazi podataka NTDS.dit, sve je super i centralizirano. Kada tvrtka ima više od jednog administratora sustava, može doći do situacije u kojoj se nakuplja smeće i nepotrebne vjerodajnice. Svi smo mi ljudi i neke stvari možemo zaboraviti, au nekim trenucima možemo biti rastreseni, što će također dovesti do zaboravljanja važnih informacija. I dolazimo do zaključka da se neaktivni korisnici (otpušteni ili zaboravljeni) gomilaju u Actvie imeniku, u svakom slučaju bi ih dobar sistemski administrator trebao identificirati, onemogućiti i po želji obrisati, što ćemo i učiniti.

Preko ADUC snap-ina

Prošli put sam vam već dao primjer korištenja Active Directory Users and Computers snap-ina, preko kojeg smo tražili nestala računala na lokalnoj mreži koja se nisu pojavila mjesec dana. Sada ćemo učiniti isto s korisničkim računima. Imam AD na Windows Server 2012 R2, otvorite ADUC, da to učinite pritisnite WIN+R i unesite dsa.msc.

U obrazac zahtjeva koji se otvori unesite:

  • Request name > za mene su ovo izgubljeni korisnici
  • Opis ako je potrebno
  • Request root > ovdje možete ostaviti cijelu domenu ili je navesti na željenoj OU

Zatim kliknite gumb za zahtjev.

Na kartici korisnika vidimo stavku "Broj dana od zadnje prijave"; na primjer, postavio sam je na 60 dana.

Kao rezultat toga, dobit ćete popis neaktivnih računa zaposlenika koji vam je potreban.

Preko powershell snap-ina

Ista stvar se može učiniti kroz Powershell. Odmah ću vam dati šifru čiji je zadatak traženje neaktivnih korisnika; za to sam odabrao period od 45 dana, onemogućio korisničke podatke i preselio se u posebno određenu OU.

$date_with_offset= (Get-Date).AddDays(-45)
$users = Get-ADUser -Properties LastLogonDate -Filter (LastLogonDate -lt $date_with_offset ) | Poredaj LastLogonDate
foreach ($user u $users) (set-aduser $user -enabled $false; move-adobject -identity $user -targetpath "ou=Otpušteni,ou=Moscow L. korisnici,ou=Lokacija,dc=msk,dc= contoso,dc=com")
Get-ADUser -Properties LastLogonDate -Filter (LastLogonDate -lt $date_with_offset ) | Poredaj datum zadnje prijave | FT ime, datum zadnje prijave -automatska veličina | Out-File c:\Script\users.txt

  • U prvom redu deklarirate varijablu u kojoj postavljate traženi pojam
  • Napravite varijablu i odaberite na temelju vremena zadnje prijave
  • Premještanje korisnika

  • Izrada izvješća u datoteku

Više korisnih stvari o radu s korisnikom. Prije korištenja naredbi u nastavku, morate učitati modul Active Directory putem naredbe

Get-Help Get-ADUser

Skripte za istovar svih korisnika iz MS Active Directory (ITGC)

Ivan Piskunov

Jedan od standardnih revizijskih postupaka ITGC za katalog Aktivni direktorij je dobiti preuzimanje svih korisnika domene. Na temelju dobivenih podataka zatim se formiraju procedure testiranja, na primjer, proučavanje popisa administratora ili identificiranje korisnika s isteklom lozinkom. Najučinkovitiji način za stvaranje takvog prijenosa bila bi upotreba standardnog sučelja PowerShell , primjere kojih ćemo razmotriti u ovom članku

1. Ekspresni prijenos pomoću skripte PowerShell

U nastavku se nalazi PowerShell skripta kao jedan od najjednostavnijih i najbržih načina za dobivanje popisa svih korisnika AD domene u CSV formatu, koji se lako otvara u Excelu.

$objSearcher = New-Object System.DirectoryServices.DirectorySearcher $objSearcher.SearchRoot = "LDAP://ou=Users,ou=Departmets,dc=test,dc=ru" $objSearcher.Filter = "(&(objectCategory=osoba) (!userAccountControl:1.2.840.113556.1.4.803:=2))" $users = $objSearcher.FindAll() # Broj računa $users.Count $users | ForEach-Object ( $user = $_.Properties New-Object PsObject -Property @( Position = $user.description Department = $user.department Login = $user.userprincipalname Phone = $user.telephonenumber Room = $user.physicaldeliveryofficename Full ime = $user.cn ) ) | Export-Csv -NoClobber -Encoding utf8 -Path C: lista_korisnika_domena.csv

Kako bi skripta radila na vašem sustavu potrebno ju je malo korigirati, odnosno unijeti potrebne parametre, tj. kao u ovom primjeru to su parametri Korisnici u odjelu Odjeli u domeni Test.ru. Također navedite put do mjesta na kojem je datoteka spremljena lista_korisnika_domena.csv

Nakon istovara, ako ga odmah otvorite lista_korisnika_domena.csv , izgledat će nečitljivo, međutim, korištenjem standardnih sredstava možemo ga lako dovesti u format koji nam je potreban. Otvori u Excelu lista_korisnika_domena.csv , odaberite prvi stupac, zatim idite na karticu "Podaci" i kliknite "Tekst po stupcima". Odaberite "razgraničeno" i kliknite "Dalje". Spreman!

!Potrebno je napomenuti da ova skripta neće prikazati više od 1000 korisnika. Prilično je prikladno za malu tvrtku, ali za one koji imaju ogroman broj korisnika u svojoj domeni, trebali bi pribjeći dolje opisanim metodama.

2. Napredni PowerShell cmdlet za dobivanje korisničkih učitavanja Active Directoryja

Alat Active Directory Module za Windows PowerShell (uveden u Windows Server 2008 R2 i noviji) omogućuje stvaranje cmdleta koji izvode različite manipulacije objektima AD imenika. Cmdlet se koristi za dobivanje informacija o korisnicima i njihovim svojstvima Get-ADUser.

Početi pokrenite Powershell prozor s administratorskim pravima i uvezite modul Active Directory za daljnje radnje:
Import-Module activedirectory

Do popis svih računa domene Pokrenimo naredbu:

Get-ADUser -filter *

Do prikazati potpune informacije o svim dostupnim atributima korisnik tuser, pokreni naredbu

Get-ADUser -identity tuser -properties *


Na primjer, zanimaju nas informacije o datum promjene lozinke i vrijeme njenog isteka . Rezultat naredbe može se izvesti u tekstualnu datoteku:

Get-ADUser -filter * -properties PasswordExpired, PasswordLastSet, PasswordNeverExpires | ft Ime, PasswordExpired, PasswordLastSet, PasswordNeverExpires > C:tempusers.txt

Ili odmah učitaj u CSV , što će u budućnosti biti prikladno izvesti u Excel (osim toga, koristeći sort-object sortirat ćemo tablicu po stupcu PasswordLastSet, a također ćemo dodati uvjet gdje - korisničko ime mora sadržavati niz "Dmitry")

Get-ADUser -filter * -properties PasswordExpired, PasswordLastSet, PasswordNeverExpires | gdje ($_.name –kao “*Dmitry*”) | sort-object PasswordLastSet | select-object Name, PasswordExpired, PasswordLastSet, PasswordNeverExpires | Export-csv -path c:tempuser-password-expires-2015.csv

U komentarima na prethodni članak sjetili smo se računovodstva u Excelu umjesto 1C. Pa da provjerimo koliko poznajete Excel. Danas ću vam pokazati kako dobiti podatke iz Active Directoryja i raditi s njima bez makronaredbi i PowerShell-a - samo sa standardnim Office mehanizmima. Na primjer, možete lako dobiti analitiku o korištenju operativnih sustava u vašoj organizaciji ako već nemate nešto poput Microsoft SCOM-a. Pa, ili se samo zagrijte i odvratite misli od scenarija.


Naravno, podatke kao u primjerima ispod možete dobiti doslovno jednom linijom u PowerShell-u. Ali, prvo, PowerShell je previše dosadan, a drugo, Excel može dinamički ažurirati podatke - rezultirajući dokumenti mogu se objaviti na mreži i zaboraviti na njihovo ažuriranje.

Za rad s podacima koristit ću Power Query mehanizam. Za Office 2010 i 2013 morat ćete instalirati dodatak; Microsoft Office 2016 već ima ugrađeni modul. Nažalost, standardno izdanje nam nije dovoljno; trebat će nam Professional.


Sam mehanizam dizajniran je za primanje i obradu podataka iz raznih izvora – od starih ODBC i tekstualnih datoteka, do Exchangea, Oraclea i Facebooka. Više detalja o mehanizmu i ugrađenom skriptnom jeziku "M" već je napisano na Habréu, ali pogledat ću nekoliko primjera korištenja Power Queryja za dobivanje podataka iz Active Directoryja.

Zagrijavanje: Da vidimo kada su se naši korisnici prijavili

Sam zahtjev prema domenskoj bazi podataka kreira se na kartici “Podaci ― Novi zahtjev ― Iz drugih izvora ― Iz Active Directoryja”.



Navedite izvor podataka.


Morat ćete odabrati naziv domene i unijeti potrebne informacije o povezivanju. Zatim ćemo odabrati vrstu objekata, u ovom primjeru - korisnik. S desne strane u prozoru za pregled, upit je već pokrenut, prikazujući pregled podataka.



Pripremamo zahtjev i divimo se pregledu.


Zahtjev trebate pripremiti unaprijed klikom na gumb "uredi" i odabirom potrebnih stupaca. U biti, ovi stupci su klase. Svaki od njih sadrži skup specifičnih atributa objekta Active Directory, osim glavnog stupca displayName, što je samo po sebi atribut. Usredotočit ću se na nastavu korisnik, osoba, vrh I sigurnostPrincipal. Sada trebate odabrati tražene atribute iz svake klase pomoću “ekstenzije” - ikone s dvije strelice u zaglavlju stupca:

  • Klasa korisnik proširiti odabirom lastLogonTimestamp I kontrola korisničkog računa;
  • V osoba izaberimo telefonski broj;
  • V vrhkadaStvoreno;
  • i u sigurnostPrincipalSamAccountName.


Proširujemo zahtjev.


Sada postavimo filtar: konkretno, kako ne bi došlo do blokiranja računa, atribut userAccountControl mora imati vrijednost 512 ili 66048. Filtar može biti drugačiji u vašem okruženju. Više o atributu možete pročitati u Microsoft dokumentaciji.



Primjena filtra.


Ponekad Excel netočno otkriva format podataka, osobito vrijednost atributa lastLogonTimestamp. Ako vas iznenada zadesi takva nesreća, možete postaviti ispravan format na kartici "Pretvori".

Sada bi stupac userAccountControl trebao biti izbrisan - on uopće nije potreban na zaslonu. I kliknite "Preuzmi i zatvori".


Rezultat je tanjur koji treba samo malo doraditi. Na primjer, preimenujte stupce u nešto čitljivije. I postavite automatsko ažuriranje podataka.


Automatsko ažuriranje prilikom otvaranja tablice ili prema isteku vremena konfigurirano je na kartici "Podaci" u "Svojstvima".



Postavljanje ažuriranja podataka.


Nakon dovršetka postavljanja ažuriranja, tablicu možete sigurno predati odjelu za osoblje ili sigurnosnoj službi - obavijestite ih tko se prijavio u sustav i kada.


Kod zahtjeva na jeziku "M" nalazi se ispod spojlera.

let Source = ActiveDirectory.Domains("domain.ru"), domain.ru = Source()[#"Object Categories"], user1 = domain.ru(), #"Remote Columns" = Table.RemoveColumns(user1,( "organizationalPerson", "shadowAccount", "posixAccount", "msExchOmaUser", "msExchBaseClass", "msExchIMRecipient", "msExchCertificateInformation", "msExchMultiMediaUser", "msExchMailStorage", "msExchCustomAttributes", "mailRecipient", "distinguishedName")), #"Prošireni element securityPrincipal" = Table.ExpandRecordColumn(#"Uklonjeni stupci", "securityPrincipal", ("sAMAccountName"), ("sAMAccountName")), #"Prošireni element vrh" = Table.ExpandRecordColumn(#"Prošireni element securityPrincipal ", "vrh", ("whenCreated"), ("whenCreated")), #"Prošireni element person" = Table.ExpandRecordColumn(#"Prošireni element top", "person", ("telephoneNumber")), ("telephoneNumber ")), #"Prošireni element korisnik" = Table.ExpandRecordColumn(#"Prošireni element osoba", "korisnik", ("lastLogonTimestamp", "userAccountControl"), ("lastLogonTimestamp", "userAccountControl")), #"Reci s primijenjenim filtrom" = Table.SelectRows(#"Prošireni korisnički element", svaki ( = 512 ili = 66048)), #"Promijenjena vrsta" = Table.TransformColumnTypes(#"Retovi s primijenjenim filtrom",(("lastLogonTimestamp", tip datumvrijeme))), #"Udaljeni stupci1" = Table.RemoveColumns(#"Promijenjena vrsta",("userAccountControl")) u #"Udaljeni stupci1"

Izrada adresara ili što učiniti kada korporativni portal nije prijateljski nastrojen prema AD-u

Druga opcija za korištenje Excela u kombinaciji s Active Directoryjem je stvaranje adresara na temelju AD podataka. Jasno je da će adresar biti ažuran samo ako je domena uredna.


Kreirajmo zahtjev za objekt korisnik, proširite razred korisnik V pošta, i klasa osoba V telefonski broj. Izbrišimo sve stupce osim istaknutoIme― struktura domene ponavlja strukturu poduzeća, pa imena Organizacijske jedinice odgovaraju nazivima odjela. Slično, sigurnosne grupe mogu se koristiti kao osnova za nazive odjela.


Sada s crte CN=Korisničko ime, OU=Računovodstveni odjel, OU=Odjeli, DC=domena, DC=ru morate izravno izdvojiti naziv odjela. Najlakši način da to učinite je korištenje graničnika na kartici Transformacija.



Izdvajanje teksta.


Kao graničnike koristim OU= I ,OU=. U principu, zarez je dovoljan, ali igram na sigurno.



Unesite razdjelnike.


Sada pomoću filtra možete odrezati nepotrebno OU, poput blokiranih korisnika i ugrađen, konfigurirajte sortiranje i učitajte podatke u tablicu.



Pogled na zbirnu tablicu.

Brzo izvješće o sastavu radnih stanica, bez unošenja sredstava ili druge pripreme

Pokušajmo sada stvoriti korisnu tablicu dobivanjem podataka na računalima. Napravimo izvješće o operativnim sustavima koje koristi tvrtka: za to ćemo izraditi zahtjev, ali ovaj put ćemo u navigatoru odabrati Računalo.



Izrađujemo zahtjev za računalni objekt.


Ostavimo se nastave kolone Računalo I vrh i proširite ih:

  • Klasa Računalo proširiti odabirom cn, operacijski sustav, operativniSystemServicePack I Verzija operativnog sustava;
  • U klasi vrh izaberimo kadaStvoreno.


Napredni zahtjev.


Po želji možete napraviti izvještaj samo na poslužiteljskim operativnim sustavima. Na primjer, filtrirajte prema atributu OperatingSystem ili OperatingSystemVersion. Neću to učiniti, ali ću ispraviti prikaz vremena nastanka - zanima me samo godina. Da biste to učinili, na kartici "Konverzija" odaberite stupac koji nam je potreban i odaberite "Godina" u izborniku "Datum".



Izdvajamo godinu od trenutka kada je računalo ušlo u domenu.


Sada preostaje samo obrisati stupac imena za prikaz kao nepotreban i učitati rezultat. Podaci su spremni. Sada možete raditi s njima kao s običnim stolom. Prvo, napravimo zaokretnu tablicu na kartici "Umetni" - "Zaokretna tablica". Dogovorimo se s izborom izvora podataka i konfiguriramo njegova polja.



Postavke polja zaokretne tablice.


Sada preostaje samo prilagoditi dizajn svom ukusu i diviti se rezultatu:



Zbirna tablica za računala u AD.


Ako želite, možete dodati sumarni grafikon, također na kartici Umetanje. U “Kategoriju” (ili u “Redove”, ovisno o ukusu) dodajte operacijski sustav, na podatke ― cn. Na kartici "Dizajn" možete odabrati vrstu grafikona koji vam se sviđa; meni se više sviđa tortni grafikon.



Kružni graf.


Sada je jasno vidljivo da je, unatoč ažuriranju koje je u tijeku, ukupan broj radnih stanica s Windows XP i poslužitelja s Windows 2003 prilično velik. I postoji nešto čemu treba težiti.


Kod zahtjeva je ispod spojlera.

let Source = ActiveDirectory.Domains("domain.ru"), domain.ru = Source()[#"Object Categories"], computer1 = domain.ru(), #"Remote Columns" = Table.RemoveColumns(computer1,( "user", "organizationalPerson", "person")), #"Ostali uklonjeni stupci" = Table.SelectColumns(#"Udaljeni stupci",("displayName", "computer", "top")), #"Proširi stavku računalo" = Table.ExpandRecordColumn(#"Ostali udaljeni stupci", "računalo", ("cn", "operatingSystem", "operatingSystemServicePack", "operatingSystemVersion"), ("cn", "operatingSystem", "operatingSystemServicePack", " OperatingSystemVersion")), #"Extended top" = Table.ExpandRecordColumn(#"Expand computer", "top", ("whenCreated"), ("whenCreated")), #"Extracted year" = Table.TransformColumns( #" Vrh proširenog elementa",(("whenCreated", Date.Year))), #"Udaljeni stupci1" = Table.RemoveColumns(#"Izdvojena godina",("displayName")) u #"Udaljeni stupci1"

Dodaj oznake

0

Imam sljedeću radnu skriptu koja provjerava je li veliki popis korisnika u CSV datoteci član AD grupe i zapisuje rezultate u results.csv.

Nisam siguran kako pretvoriti skriptu da bih mogao promijeniti $group = "InfraLite" u $group = DC .\List_Of_AD_Groups.CSV.

Dakle, skripta ne vraća samo podudaranja za jednu AD grupu, već vraća podudaranja za 80 AD grupa sadržanih u List_of_AD_groups.csv. Pisanje DA/NE za svaku AD grupu u novi CSV stupac (ili ako to nije moguće, stvaranje zasebne CSV datoteke za svaku grupu s rezultatima učinit će isto.

Mogao bih to učiniti ručno promjenom vrijednosti iz $group i naziva izvozne datoteke i ponovnim pokretanjem skripte 80 puta, ali morao bih biti brz s PS-om da to učinim

na primjer rezultati.csv?:

IME AD_GROUP1 AD_GROUP2 AD_GROUP80 itd itd. korisnik1 da ne da korisnik2 ne ne da korisnik3 ne da ne echo "UserName`InfraLite" >> results.csv $users = GC .\user_list.csv $group = "InfraLite" $members = Get-ADGroupMember -Identity $group -Recursive | Odaberite -ExpandProperty SAMAccountName foreach ($user u $users) ( if ($members -sadrži $user) ( echo "$user $group`tYes" >> results.csv ) else ( echo "$user`tNo" >> rezultati .csv) )

  • 2 odgovora
  • Sortiranje:

    Aktivnost

0

Trivijalno rješenje vašeg problema bilo bi omotati vaš postojeći kod u drugu petlju i stvoriti izlaznu datoteku za svaku grupu:

$groups = Get-Content "C:\groups.txt" foreach ($group in $groups) ( $members = Get-ADGroupMember ... ... )

Elegantniji pristup bio bi stvoriti predložak grupnog mapiranja, klonirati ga za svakog korisnika i popuniti kopiju članstvom u grupi korisnika. Nešto poput ovoga bi trebalo funkcionirati:

$template = @() Get-Content "C:\groups.txt" | ForEach-Object ( $template[$_] = $false) $groups = @() Get-ADGroup -Filter * | ForEach-Object ( $groups[$_.DistinguishedName] = $_.Name) Get-ADUser -Filter * -Properties MemberOf | ForEach-Object ( $groupmap = $template.Clone() $_.MemberOf | ForEach-Object ( $groups[$_] ) | Where-Object ( $groupmap.ContainsKey($_) ) | ForEach-Object ( $groupmap [$_] = $true ) New-Object -Type PSObject -Property $groupmap ) | Izvoz-Csv "C:\user_group_mapping.csv" -NoType

0

Igrao sam se s ovim neko vrijeme i mislim da sam pronašao način da dobiješ točno ono što tražiš.

Mislim da je Ansgar bio na dobrom putu, ali nisam ga mogao natjerati da učini ono što je uslijedilo. Spomenuo je da u vrijeme pisanja nije imao pristup AD okruženju.

Evo što sam smislio:

$UserArray = Get-Content "C:\Temp\Users.txt" $GroupArray = Get-Content "C:\Temp\Groups.txt" $OutputFile = "C:\Temp\Something.csv" # Postavljanje hashtable za kasniju upotrebu $UserHash = New-Object -TypeName System.Collections.Hashtable # Vanjska petlja za dodavanje korisnika i članstva u UserHash $UserArray | ForEach-Object( $UserInfo = Get-ADUser $_ -Properties MemberOf # Skida LPAP sintaksu samo na SAMAccountName grupe $Memberships = $UserInfo.MemberOf | ForEach-Object( ($_.Split(",")) .replace("CN=","") ) #Dodavanje para Korisnik=Članstvo u hash $UserHash.Add($_,$Memberships) ) #Vanjska petlja za stvaranje objekta po korisniku $Results = $UserArray | ForEach-Object( # Prvo kreirajte jednostavan objekt $User = New-Object -TypeName PSCustomObject -Property @( Name = $_ ) # Dinamički dodajte članove objektu, na temelju $GroupArray $GroupArray | ForEach-Object ( #Checking $UserHash da biste vidjeli prikazuje li se grupa na popisu članstva korisnika $UserIsMember = $UserHash.($User.Name) -sadrži $_ #Dodavanje svojstva objektu i vrijednost $User | Add-Member -MemberType NoteProperty -Name $ _ -Value $UserIsMember ) #Vraćanje objekta u varijablu Return $User ) #Pretvorite objekte u CSV, zatim ih ispišite $Results |

Nadajmo se da sve ima smisla. Komentirao sam koliko sam mogao. Bilo bi vrlo lako pretvoriti u ADSI ako nemate instaliran RSAT na bilo kojem računalu na kojem ovo radite. Ako vam zatreba, javite mi i ja ću napraviti neke brze promjene.

Danas ćemo pokušati preuzeti popis svih korisnika u zasebnu datoteku iz Active Directory. Naš glavni pomoćnik u ovom pitanju bit će PowerShell. Stvar je u tome što je Microsoft isprva planirao naredbenu konzolu PowerShell kao glavni alat za upravljanje komponentama Windows poslužitelja. I danas, kada već imamo verziju 2.0, uglavnom je tako.

Čak iu nedavnoj prošlosti, da bi nekako komunicirali s AD-om, administratori su morali imati na raspolaganju ili uslužni program dsquery ili razne vrste skripti ili uslužnih programa. Danas, počevši od Windows Servera 2008 R2, možemo raditi s AD-om kroz PowerShell. Pojavom PowerShell 2.0 koristi se poseban modul za interakciju s Active Directoryjem Modul Active Directory za Windows PowerShell, koji sadrži potreban popis cmdleta. Za naše zadatke koristit ćemo naredbu Get-ADUser.

Dakle, ovisno o tome na kojem operativnom sustavu ćemo pokretati PowerShell konzolu, morat ćemo izvršiti “pripremne korake”.

1) Ako radimo pod Windows Serverom do verzije 2012, tada moramo pokrenuti naredbu:

  • Import-Module activedirectory – naredba za uvoz modula u AD

Za verzije operativnog sustava od 2012. i novije, ovaj modul je već uključen prema zadanim postavkama.

2) Ako radimo s bilo kojeg klijentskog Windowsa, onda na njemu mora biti instaliran RSAT paket za daljinsku administraciju, s instaliranom komponentom Active Directory Module for Windows PowerShell.

Vrijedno je napomenuti da se cmdlet Get-ADUser preporučuje za izvršavanje kada je količina podataka koji se učitavaju do 1000 korisnika.

Izvoz AD korisnika pomoću PowerShell-a u zasebnu datoteku

Prvo, pozovimo pomoć za naredbu Get-ADUser. Kao rezultat toga, dobit ćete sve potrebne naredbe za daljnju administraciju.

  • pomoć Get-ADUser – naredba za poziv pomoći

Da biste dobili popis svih korisnika sa svim svojstvima u PowerShell prozoru, morate pokrenuti sljedeću naredbu:

  • Get-ADUser -filter * – eksport popisa AD korisnika

Ovo učitavanje nije posve informativno i ne uklapa sve potrebne informacije u prozor. Stoga, pokušajmo suziti pretragu i prikazati svojstva određenog korisnika pod imenom user1:

  • Get-ADUser -identity user1 -properties * – izvoz svojstava određenog korisnika

Pokušajmo sada izvesti popis svih korisnika s njihovim svojstvima na vanjski txt ili csv datoteka:

  • Get-ADUser -filter * -svojstva * | Export-csv -path c:\users.csv -encoding Unicode – izvoz korisnika u zasebnu datoteku

Želio bih obratiti posebnu pozornost na ključ -kodiranje Unicode. Služi kako bi se osiguralo da se ruska ćirilica, nakon izvoza iz AD-a, može ispravno prikazati u učitanoj datoteci. Na primjer, kroz Microsoft Excel vidjet ćemo upitnike umjesto ruskih slova.

Prilikom pregledavanja datoteke, podaci se izvoze u jednom retku i stoga nisu čitljivi. Da bismo to promijenili moramo učiniti sljedeće: