Er du på udkig efter en hurtig måde at oprette en Active Directory (AD) rapport ved hjælp af PowerShell? Du er kommet til det rigtige sted! I denne artikel lærer du, hvordan du opretter brugerdefinerede rapporter om brugerkonti i dit ANNONCEMILJØ ved hjælp af Get-ADObject cmdlet.forestil dig, at du arbejder hos et startfirma, og lær, at virksomheden fik finansiering af investorer til at vokse virksomheden ved at ansætte nye mennesker til flere positioner., Din leder giver dig en anmodning om at give hende en rapport om hovedet tæller for hvert kontor for at sikre, at arbejdspladsen har tilstrækkelig kontorlokaler.

normalt vil du manuelt se annoncekonti ved hjælp af Active Directory brugere og computere (ADUC) applikationskonsol installeret på din stationære computer. Brug af ADUC tager dog i gennemsnit et minut pr. ny medarbejder til at gennemgå oplysninger for hver annoncekonto.,

du søger hurtigt på internettet efter nogle muligheder og opdager, at du kan automatisere indsamling af ANNONCERAPPORTDATA ved hjælp af en Po .ershell cmdlet kaldet Get-ADObject. I denne artikel lærer du, hvad Get-AdObject Po .ershell cmdlet gør, og hvordan du korrekt bruger denne praktiske annonce Po .ershell cmdlet til at automatisere rapportoprettelse.

Indholdsfortegnelse

særlige Forudsætninger/Krav

Denne artikel vil være en gennemgang ved hjælp af Get-ADObject., Hvis du planlægger at følge med, være sikker på at du har følgende forudsætninger være på plads:

  • Logget på et domæne-sluttede Windows 10 PC ‘ en som en bruger med rettigheder til at søge AD brugere
  • I et Windows Server 2016 eller højere Active Directory-miljø. Laboratoriet du vil arbejde med i denne artikel hedder mylab.lokalt.
  • Remote Server Administration Tools (RSAT) pakke

Quick tip: Hvis du ikke har RSAT installeret, og du er på den seneste version af Windows-10, kan du hurtigt installere det ved hjælp af PowerShell-kommando Install-WindowsFeature -Name RSAT-AD-PowerShell.,

Få-ADObject: Det er Valgmuligheder og Parametre

Det vigtigste formål med Get-ADObject cmdlet er at oprette forbindelse til et AD-domænecontroller eller Lightweight Directory Service (LDS) server og returnere information om forskellige Active Directory-objekter.

Til forespørgsel AD objekter, den Get-ADObject cmdlet har en række parametre, som giver dig mulighed for at forbinde til forskellige domænecontrollere, søge en global catalog, autentificere via alternative legitimationsoplysninger og også angive, LDAP-filtre og begrænse objekter, der returneres af anvendelsesområdet for en search base.,

Bemærk, at Get-ADObject cmdlet som standard kun returnerer et enkelt sæt 1000 ANNONCEOBJEKTER. Den bedste måde at tilsidesætte denne konfiguration er at bruge parameteren ResultSetSize, der angiver det maksimale antal objekter, der skal returneres. Hvis du vil modtage alle objekterne, skal du indstille denne parameter til $Null (null-værdi). Derefter kan du bruge Ctrl+C til at stoppe forespørgslen og returneringen af objekter.,

For mere information om Get-ADObject‘s parametre, tjek Get-ADObject hjælp-dokumentation.

Læringsprojektoversigt

Denne artikel lærer digGet-ADObject Po .ershell cmdlet ved at anvende den på et real-scenarioorld scenario. Du lærer ved at nærme sig scenariet forklaret i de indledende afsnit.

scenariet

i denne artikel lærer du, hvordan du brugerGet-ADObject til at generere to rapporter, der skal sendes til din manager., Den første rapport vil nedbryde alle brugerkonti i hver afdeling. Chefen vil gerne have separate CSV-filer for hver afdeling. Den anden opgave vil forespørge alle deaktiverede brugerkonti i en bestemt OU, og det er barn Ou ‘ er.,

Ved slutningen af den artikel, vil du være i stand til at generere en CSV-filer, der ligner følgende:

AD brugerkonti ved OU
Deaktiveret bruger konti

AD-Miljø

Active Directory-ORGANISATIONSENHED struktur, du vil arbejde med i denne artikel ser ud som nedenfor., Du kan se, at vi har en forældreafdeling OU med tre børn Ou ‘ er kaldet regnskab, Marketing og IT. Inde i hver af disse barn Ou ‘er er to barnebarn Ou’ er kaldet brugere og computere.

  • Institut (OU)
    – Regnskab (OU)
    Brugere
    – Computere
    – Marketing (Indlejrede OU)
    Brugere
    – Computere
    – DET (Indlejrede OU)
    Brugere
    – Computere

Genvej: Du kan bygge disse Lig med New-ADOrganizationalUnit PowerShell-cmdlet. For et script til at gøre hurtigt arbejde med dette tjek Create-OU-Structure.ps1 script.,

du vil også arbejde med snesevis af forskellige AD brugerkonti placeret inde i hver af brugerne Ou ‘ er som vist nedenfor. Disse navne blev valgt tilfældigt.

  • Regnskab (accountant_user1-5)
  • Markedsføring (market_user_user1-5)
  • DET (it_user1-5)

Genvej: Hvis du gerne vil hurtigt at oprette disse brugerkonti indersiden af ovennævnte OUs, downloade og køre Udfylde-AD_Accounts.ps1 script.,

Oprettelse af Active Directory Rapporter ved hjælp af Få-ADObject

Nok indledning og baggrund oplysninger om Get-ADObject. Lad os endelig komme ned for at lære, hvordan denne PowerShell-cmdlet virker i den virkelige verden!

i dette første eksempel har du til opgave at give din manager en CSV-fil en rapport for alle brugerkonti, der findes i Ous ‘ en regnskabs -, Marketing-og IT-afdelingen.,

Forstå Filter Parameter

Det eneste der kræves parameter i Get-ADObject PowerShell-cmdlet er Filter. Dette er en parameter er en måde at begrænse antallet af objekter tilbage. Da det er en nødvendig parameter, skal du definere det, selvom du gerne vil returnere alle objekter ved hjælp af et jokertegn (*). Dette fortæller Get-ADObject for at returnere alle objekter.

det enkleste eksempel på at bruge parameteren Filter er at returnere alle objekter i et helt ANNONCEDOMÆNE som nedenfor.,

PS51> Get-ADObject -Filter *

du vil se parameterenFilter, der bruges til både at returnere alle objekter og for at begrænse omfanget af returnerede objekter i hele denne artikel.

For mere information om Filter parameteren ‘ s syntaks, kør Get-Help about_ActiveDirectory_Filter i PowerShell console.

Begrænse Søgningen Rækkevidden ved hjælp af den SearchBase Parameter

Det eksempel, du arbejder med, er en perfekt use case for Get-ADObject‘s SearchBase parameter., ParameterenSearchBase giver dig mulighed for at begrænse søgeforespørgslen og dermed objekter, der returneres viaGet-ADObject ved at begrænse omfanget til en bestemt ou.

Ved at begrænse omfanget, dette reducerer den tid, det tager for Get-ADObject for at køre ved at udelukke andre OUs i AD og kun rettet mod specifikke OU, der er relevante for at hente de data, som du har brug for.

i dette eksempel skal du trække alle ANNONCEBRUGERE i forældreafdelingen OU og alle børn Ou ‘ er som nedenfor. Dette vil returnere alle brugere i afdelingen OU og i alle børn Ou ‘ er.,

PS51> Get-ADObject -Filter * -SearchBase 'OU=Department,DC=mylab,DC=local'

udnyttelse af Filterparameteren

fra nu af kan du forespørge alle brugerobjekter i afdelingen OU og alle børn Ou ‘ er. Men det er ikke nødvendigt på dette tidspunkt. Lad os i stedet bare trække alle regnskabsbrugerne først ud. En måde at gøre det på er faktisk at bruge parameteren Filter snarere end blot at give en wildildcard-værdi.

for at begrænse resultaterne skal du bruge Filterværdien af Department -eq 'Accounting'., Dette begrænser resultaterne til kun de objekter i afdelingen OU, der har en annonce afdeling attribut indstillet til regnskab.

nedenfor kan du se, at du gemmer alle objekter i variablen $accounting_users. Dette vil blive brugt senere.

PS51> $accounting_users = Get-ADObject -SearchBase 'OU=Department,DC=mylab,DC=local' -Filter {Department -eq "Accounting"}

Kør AD-Objekter til en CSV-Fil

Nu $accounting_users indeholder alle de gældende objekter, du kan rør kun de Name og Department egenskaber for hvert objekt til Export-Csv cmdlet., Denne cmdlet opretter en ny CSV-fil og gemmer hvert ANNONCEOBJEKT som en række.

Du skal nu have en CSV-fil kaldet report_accounting_users.csv på dit skrivebord ligner skærmbilledet nedenfor.

report_accounting_users.csv

Indsamle Andre Bruger Genstande

Nu, at du kender det grundlæggende i, hvordan man bruger Get-ADObject for at finde ANNONCE brugere, udvide det til at finde de bruger objekter for de øvrige afdelinger. Du vil bruge det samme generelle koncept som før.,

Find først alle ANNONCEBRUGERE på San Francisco-kontoret.

report_sanfrancisco_office_users.csv

find derefter alle brugere, der arbejder på Florida-kontoret. Dette eksempel er lidt anderledes, fordi du bruger Select-Object cmdlets beregnede egenskaber. Dette giver dig mulighed for at omdanne objekt ejendom navn fra blot st, der kommer fra Get-ADObject til en mere beskrivende State.,

report_florida_state_users.csv

endelig indsamle alle IT-brugere. Denne gang, i stedet for at bruge Afdelingsannonceattributten, skal du bruge parameteren Filter til at finde alle objekter med et navn, der starter med det.

Bemærk: i Stedet for at bruge objectClass -eq 'user' i det foregående eksempel, du kunne også have brugt Get-AdUser cmdlet.,

report_select_users.csv

Find Deaktiverede Konti med LDAP Filter

I det foregående eksempel, du har brugt Filter parameter til at begrænse de objekter, der returneres af Get-ADObject. En anden måde at gøre det på er at bruge parameteren LDAPFilter. Denne parameter udfører den samme opgave, men giver dig mulighed for at angive et filter via en LDAP-forespørgselssøgestreng., Parameteren LDAPFilter betragtes som en mere avanceret mulighed for at søge i Active Directory.

Lad os nu oprette en rapport til at finde alle handicappede brugere i din organisation ved brug af LDAPFilter og SearchBase parametre for at målrette mod en bestemt OU.

useraccountcontrol:1.2.840.113556.1.4.803:=2 indstilling er en ANNONCE attribut, der er angivet for alle handicappede brugere i Active Directory NTDS-database. Det er en måde for AD at markere konti, der ikke er aktive (logon er deaktiveret)., Her er flere eksempler på LDAP-forespørgsler, som du måske finder nyttige.

kommandoen nedenfor løber LDAP filter parameter, der bruges til kun at vise handicappede brugere og derefter opretter en rapport ved hjælp af Export-CSV cmdlet som du har gjort tidligere.

report_disabled_users.csv

slutresultatet

Du skal nu have fem CSV-filer på skrivebordet klar til din manager!,

Oversigt

I denne artikel, du har lært hvordan til at søge Active Directory ved hjælp af Get-ADObject PowerShell-cmdlet.

hvad næste?

for at tage det, du har lært længere, skal du tage denne proces med at generere ANNONCERAPPORTER til det næste niveau ved måske at eksportere dataene til en database. Når du er i en database, kan du få adgang til ANNONCERAPPORTDATAENE ved hjælp af enten et specialbygget websiteebsted eller et program som Microsoft SharePoint. Dette er kun en ID.. Der er utallige andre!,

muligheden for at søge i Active Directory er et grundlæggende skillset, der er nødvendigt i mange organisationer, og en, der i sidste ende sparer dig og dit team timevis.

yderligere læsning

  • Active Directory Scripts massevis: kom og få det!
  • Microsoft-dokumentation