What this report is, how it was made and answers to common questions
AD Report # 1 is a complete reporting website for an Active Directory forest. It gives a hands-on view of a large, global AD estate: its health, replication, security posture and every object in it.
The forest, adreps.com, was built from scratch on Windows Server 2025 by a set of PowerShell scripts. They apply a hardened, three-tier security model and fill the directory with fictitious but realistic sites, users, groups and computers.
A read-only collector then exported everything about the forest to JSON. That collection was enriched with synthetic data, turning two lab domain controllers into a 54-DC estate across four regions, complete with replication topology, logon history, hardware inventory, a week of performance history and a few deliberate faults. Every row is labelled so you can always tell real data from generated data.
The website itself is a set of static pages. Each one loads its JSON when you open it, so refreshing the data files updates the report straight away, with no build step and no server.
The synthetic data only fills the gaps a two-DC lab can't show. Every page, check and dashboard panel works the same on a production forest with entirely real data.
Get-ADReportData.ps1, against your own forest, and Get-ADPerfData.ps1 for DC performance.Update-SiteData.ps1. Every row is then labelled Live.See Collecting the data in the Guide.
An Active Directory reporting site. It shows one forest, adreps.com, from every angle: the forest and domain, sites and geography, domain controllers, replication, DC health and performance, DNS, users, computers, groups, OUs, Group Policy, security checks, the tier model, LAPS, BitLocker and the DSRM password.
It's a working demonstration of what a complete AD health and compliance report can look like, built end to end from PowerShell to the web page.
No. adreps.com is a lab forest built for this project on Windows Server 2025. The people, computers, sites and IP addresses are fictitious, and nothing here belongs to a real organisation.
The forest itself is real, though. It was built by script, populated with objects, and then read by the collector, so the structure, GPOs, permissions and security settings you see are genuine.
AD administrators, security and operations teams, and anyone who wants to see what an AD estate looks like when it's well documented. You can use it as:
It's the first report in the series, built around one forest. The site name appears in the sidebar and in every browser tab title.
Two PowerShell collectors produce JSON files that the website reads:
The Guide explains both, and Data Collection lists every data set with its row counts.
Every row carries a DataSource value:
The Data Collection page shows the mix for each data set.
A lab has two domain controllers in one room. A real estate has dozens across continents, with replication between them, years of logon history and the occasional fault. The synthetic data turns the lab into a believable 54-DC, 4-region enterprise, so every page has something meaningful to show.
It's generated from the real collection, with a fixed seed, so the same input always gives the same output.
Some are deliberate. A handful of faults were injected so the alerting can be seen working:
The Guide lists them under Injected faults. Findings such as accounts that have never logged on or missing BitLocker keys come from the generated data too.
No. The collector never exports LAPS passwords, BitLocker recovery passwords, the DSRM password or KDS root key values. It records only whether they exist, their dates and who is allowed to read them.
The footer of every page shows when the data was collected. Pages fetch their JSON fresh on every load, so a browser refresh, or the Refresh data button, shows the latest files. On Cloudflare the data/ folder is set to always revalidate.
The Ops Dashboard reloads its data by itself every 5 minutes. To publish a new collection, copy its JSON into the site with Update-SiteData.ps1.
Use the search box at the top of every page, or press / from anywhere to jump to it. It searches:
Press Enter for the full results page. Names in tables are links too, and hovering over one shows a summary card.
Yes. Every table has a CSV button that downloads the rows you're looking at, after any search or filter. The full data sets are the JSON files in the site's data/ folder, and the collector also writes an Excel workbook.
Filter buttons above a table narrow it down. Red buttons pick out failures and errors, and amber buttons pick out warnings, so problems stand out before you click.
Many buttons explain what they match when you hover over them. The counts update with the region filter where there is one.
Press the amber Full screen button at the top of any page. The site stays full screen as you move between pages, and a Back button appears for stepping back through the pages you've visited. Press Esc or Exit full screen to leave.
For a permanent wall display, a browser in kiosk mode or F11 works too.
Yes, with the Light/Dark switch at the top right. Your choice is remembered in this browser. Until you choose, the site follows your device's setting.
Plain HTML, CSS and JavaScript, with no framework, no build step and no server code. Maps and charts are drawn as SVG, and the dashboard globe is drawn on an HTML canvas.
The data is JSON produced by PowerShell, and the site is hosted as static files on Cloudflare Workers. The Guide covers how the website works.
No. Any static file host will do. The only requirement is that the pages are served over HTTP rather than opened from disk, because browsers won't let a page loaded from file:// fetch its JSON. Start-LocalSite.ps1 runs a local preview server for that.
Yes. Get-ADReportData.ps1 is read-only and runs on a DC, or on a machine with RSAT, as a Domain Admin. Copy its JSON into the site with Update-SiteData.ps1 and the pages will show your forest.
Some checks, such as Expected build GPOs and the tier model, compare against the NewForest build. Those will show differences in a forest that wasn't built the same way.
Current versions of Edge, Chrome, Firefox and Safari. The site uses modern CSS such as color-mix(), so very old browsers won't display it correctly.