Dette indlæg er alene udtryk for skribentens egen holdning.

Hjælp til selvhjælp - få lidt bedre styr på dit AD med New-ADReport

21. marts 2015 kl. 15:455
Artiklen er ældre end 30 dage
Manglende links i teksten kan sandsynligvis findes i bunden af artiklen.

Jeg har udfærdiget et "lille" PowerShell script, New-ADReport.ps1, som udtrækker en række interessante informationer om brugere, computere og grupper i Active Directory (AD). Tanken er at give et hurtigt overblik over miljøets tilstand - primært med sikkerhed for øje.

Man kan i store træk sammenligne det med de udtræk, som en klassisk IT-revision jævnligt foretager - med et twist. Der ses eksempelvis på politikker for adgangskoder, inaktive bruger- og computerkonti, anvendelsen af en række specielle rettigheder og konfigurationer, medlemskab af privilegerede grupper m.v.

Forhåbentlig kan alle de, som ikke har investeret i mere forkromede værktøjer til den slags, få glæde af scriptet og måske anvende det til at få strammet lidt op på sikkerheden i Active Directory, evt. til at kontrollere at ens outsourcing-partner og/eller driftafdeling har styr på AD-relaterede processer, konfigurationer og tildelte rettigheder.

En del informationer i rapporten kræver yderligere fortolkning og lidt forstand på Active Directory, herunder eksempelvis relaterede 'Best Practices' og forsvar mod Pass-the-Hash angreb.

Artiklen fortsætter efter annoncen

Scriptet leverer som udgangspunkt en enkel rapport i en almindelig tekstfil, som set i skærmdump nedenfor.

Der er yderligere mulighed for at udtrække rå data i separate CSV filer, f.eks. til videre sortering og analyse i Excel.

Scriptet kan eksekveres af en almindelig Domain User, såfremt denne har PowerShell, inkl. ActiveDirectory modulet, installeret. Yderligere detaljer om eksekvering er indeholdt i scriptet, omend grundlæggende forstand på PS eksekvering er påkrævet.

Artiklen fortsætter efter annoncen

Som med alverdens andre scripts, er det kun fantasien, der sætter grænser. New-ADReport kan eksempelvis forholdsvis nemt omskrives til at sende en månedlig rapport pr. e-mail eller lignende.

Scriptet leveres as-is og uden bindinger af nogen art. Det er ufarligt at køre, da der kun læses fra AD, men eksekvering foregår 100% på eget ansvar, så læs koden igennem selv først. Jeg skal i den forbindelse beklage de manglende kommentarer og det betydelige potentiale for kodeoptimering.

En speciel tak skal lyde til PowerShell MVP Claus Nielsen (@claustn), som har hjulpet undervejs i udviklingsprocessen.

Skriv gerne om evt. bugs eller ønsker til næste version i kommentarerne nedenfor eller på Twitter: @JakobHeidelberg.

Seneste version kan hentes her: http://1drv.ms/1GAe0Eo

I håbet om flere stramt styrede AD'er i verden :-)

5 kommentarer.  Hop til debatten
Denne artikel er gratis...

...men det er dyrt at lave god journalistik. Derfor beder vi dig overveje at tegne abonnement på Version2.

Digitaliseringen buldrer derudaf, og it-folkene tegner fremtidens Danmark. Derfor er det vigtigere end nogensinde med et kvalificeret bud på, hvordan it bedst kan være med til at udvikle det danske samfund og erhvervsliv.

Og der har aldrig været mere akut brug for en kritisk vagthund, der råber op, når der tages forkerte it-beslutninger.

Den rolle har Version2 indtaget siden 2006 - og det bliver vi ved med.

Debatten
Log ind eller opret en bruger for at deltage i debatten.
settingsDebatindstillinger
5
9. april 2015 kl. 11:15

Det er vigtigt at man kører allerførste linje, som vist på Jakobs skærmbillede. . .\New-ADReport.ps1

Herefter kan man anvende New-ADReport som "almindelig" powershell-kommando.

Men det er som du skriver, Jakob, "grundlæggende forstand på PS eksekvering er påkrævet", hehe.

2
22. marts 2015 kl. 15:12

Jeg kender ikke det værktøj, men en række andre. De kan være helt OK. Dog foretrækker jeg personligt et scripting approach af flere årsager:

  1. det er åben kode hvor alle kan se hvad der foretages - jeg vil helst vide hvad toolet gør
  2. alle kan tilrette og modificere som de har lyst - ingen afhængighed
  3. det er let at transportere imellem forskellige miljøer og kræver ikke installation (og godkende heraf) - rart som konsulent der ser mange miljøer
  4. man kan nemt integrere med andre systemer og skræddersy
  5. der er ingen licens-udfordringer eller omkostninger

Dertil lærer man en hulens masse mere om de ting man arbejder med, når man springer ud i den slags projekter selv - det er dét, jeg elsker ved IT :)

3
22. marts 2015 kl. 18:47

Det var skam heller ikke ment som kritik, jeg har selv en tyk digital mappe med scripts! :) Er open source argumentet ikke lidt mut, når vi nu alligevel kører Windows? ;P

4
22. marts 2015 kl. 18:55

Jeg tog det bestemt heller ikke som kritik. Det var heller ikke ment som et argument for open source generelt.