Na verloop van tijd kunnen devices die met Microsoft Entra ID (voorheen Azure AD) verbonden zijn verouderd, inactief of dubbel raken. Met een lijst van inactieve of verouderde devices kunnen IT-beheerders onderbouwde keuzes maken, licenties optimaliseren en een opgeruimde Azure-omgeving behouden.
In deze handleiding leest u hoe u met PowerShell en de Microsoft Graph API joined verouderde devices opspoort, exporteert en de Azure AD-opschoning automatiseert.
Wilt u het onderwerp liever visueel doornemen? Bekijk dan onze video: Zo exporteert u met PowerShell een inventaris van inactieve Azure-devices voor opschoning.
Het CSV-bestand met verouderde Azure AD-joined devices exporteren: stap voor stap
Om inactieve devices in Azure AD te verwijderen, hebt u eerst een lijst met inactieve devices nodig. In dit gedeelte doorloopt u stap voor stap hoe u het CSV-bestand via PowerShell exporteert.
📌 Vereisten:
Voor het exporteren van het CSV-bestand hebt u het volgende nodig:
- Beheerdersrechten in Azure AD of Entra ID
- Toegang tot de Microsoft Graph API met de volgende machtigingen:
- Device.Read.All
- Directory.Read.All
- PowerShell 7+
- De module Microsoft.Graph geïnstalleerd
Daarnaast zijn een RMM-agent en toegang tot het register handig voor de vervolgstappen na het exporteren van een CSV.
Stap 1: verbinding maken met Microsoft Graph en de devicelijst ophalen
Volg deze stappen:
- Maak verbinding met Microsoft Graph en authenticeer de verbinding met de opdracht:
Connect-MgGraph -Scopes "Device.Read.All Directory.Read.All"
- Haal de devicelijst op met de opdracht: $devices = Get-MgDevice -All
Stap 2: verouderde of inactieve Azure-devices filteren
Bepaal welke Azure-devices verouderd of inactief zijn op basis van het moment waarop ze voor het laatst actief waren. Stel daarvoor de grenswaarde voor inactiviteit in met de opdracht:
$cutoff = (Get-Date).AddDays(-90)
$inactiveDevices = $devices | Where-Object {
$_.ApproximateLastSignInDateTime -lt $cutoff
}
💡 TIP: voor een nauwkeurigere lijst kunt u serviceaccounts en hybride objecten uitsluiten met deze opdracht:
$inactiveDevices = $inactiveDevices | Where-Object {
# Exclude Hybrid Azure AD Joined devices $_.DeviceTrustType -ne "HybridAzureADJoined" -and
# Exclude Personally Owned devices (keep only Corporate owned) $_.DeviceOwnership -eq "Company"
}
Alternatieve methode: inactieve gebruikers vinden in Azure Active Directory
U kunt inactieve gebruikers ook in het Entra-beheercentrum vinden. Ga naar Monitoring > Aanmeldingen en filter vervolgens op gebruikers die binnen een bepaalde periode niet hebben ingelogd (bijvoorbeeld 30, 60 of 90 dagen).
Stap 3: het CSV-bestand exporteren
Gebruik deze opdracht om het CSV-bestand te exporteren:
$inactiveDevices | Select-Object DisplayName, Id, DeviceId,
DeviceTrustType, ApproximateLastSignInDateTime |Export-Csv -Path "C:\Reports\InactiveAzureDevices.csv" -NoTypeInformation
Na het exporteren kunt u het CSV-bestand gebruiken voor documentatie, goedkeuringsworkflows en het importeren in opschoonscripts.
Devices taggen voor lokale opschoning en verouderde computers uit Active Directory verwijderen
Naast de drie hoofdstappen hierboven kunt u het opschoonproces voortzetten met de volgende methoden:
Devices taggen voor lokale opschoning in het Windows-register via PowerShell
Devices taggen is handig wanneer u via RMM of scripts toegang tot de devices hebt. Dankzij de tags kunnen RMM- en scripttools vaststellen welke devices als verouderd gelden, zodat die tools opschoonacties veilig op elkaar kunnen afstemmen.
Voer deze opdracht uit in PowerShell:
New-Item -Path "HKLM:\SOFTWARE\Org\DeviceCleanup" -ForceSet-ItemProperty -Path "HKLM:\SOFTWARE\Org\DeviceCleanup" -Name "CleanupStatus" -Value "MarkedInactive"Set-ItemProperty -Path "HKLM:\SOFTWARE\Org\DeviceCleanup" -Name "MarkedDate" -Value (Get-Date).ToString("u")
Voer de volgende regel uit in de opdrachtprompt om te controleren of de wijzigingen zijn doorgevoerd:
reg query HKLM\SOFTWARE\Org\DeviceCleanup
Verouderde devices in Azure AD verwijderen
Er zijn twee manieren om verouderde, inactieve of dubbele devices in Azure AD op te schonen: via Microsoft Graph of via Azure Portal.
Een device opschonen via Microsoft Graph
Een device rechtstreeks via Graph verwijderen:
Remove-MgDevice -DeviceId $device.Id
⚠️ Belangrijk: deze opdracht verwijdert direct en definitief. Devices worden niet naar een prullenbak verplaatst. Ga dus voorzichtig te werk.
Een verouderd AD-joined device opschonen via Azure Portal
Azure Portal beschikt over een functie voor bulkverwijdering waarmee u meerdere inactieve devices tegelijk kunt opschonen. Ga naar Azure Portal > Entra ID > Devices > Bulkacties > Verwijderen.
Waar u nog meer op moet letten bij het opschonen of als inactief markeren van AD-joined devices
Multi-factor authentication en conditional access policies
Is een device gekoppeld aan de toegang van een gebruiker, controleer dan of het onderdeel uitmaakt van MFA– of conditional access-flows. Verwijdert u een device dat nog aan de toegangsvereisten van een gebruiker is gekoppeld, dan kan die gebruiker mogelijk niet meer bij bedrijfsapps, VPN’s en andere belangrijke bestanden.
Licenties
Intune, Microsoft Defender, Microsoft-tools en andere tools werken vaak met een licentie per geregistreerd device. Inactieve en dubbele devices verbruiken die licenties meestal gewoon. Merkt u dat uw organisatie veel verouderde devices heeft, overweeg dan een opschoning om licenties vrij te maken voor gebruik binnen de organisatie.
Hybride omgevingen
In een hybride omgeving kunnen devices zich aanmelden via een on-premises AD of via de Entra-directory. Een hybride device verwijderen zonder het jointype te controleren kan problemen veroorzaken, zoals inconsistente joinstatussen. Controleer daarom altijd de hybride joinstatus vóór verwijdering.
Auditing en documentatie
Opschoonacties maken doorgaans deel uit van reguliere IT Management-processen rond compliance, beveiligingsaudits en licentiebeheer. Een logboek van verwijderde devices en hun status helpt uw documentatie consistent te houden en bevestigt dat er geen ongeautoriseerde verwijderingen hebben plaatsgevonden.
Veelvoorkomende problemen oplossen
De CSV wordt niet geëxporteerd
Dit probleem doet zich voor wanneer de CSV-export (stap 3) mislukt. Dat gebeurt omdat het pad niet bestaat, de gebruiker niet de juiste machtigingen heeft of omdat er een relatief pad is gebruikt in een sessie waarin dat niet goed wordt omgezet. Controleer het uitvoerpad of gebruik het volledige pad in $env: TEMP.
Toegang geweigerd
Gebruikers die bij het verbinden met Microsoft Graph niet de benodigde scopes opgeven, kunnen geblokkeerd worden bij het ophalen van devicegegevens. Zorg ervoor dat u over de juiste beheerdersrol en machtigingen beschikt en dat u de juiste Graph API-scopes meegeeft.
Lege ApproximateLastSignInDateTime
Een lege ApproximateLastSignInDateTime betekent dat er nooit op het device is aangemeld of dat er geen telemetrie beschikbaar is. Controleer de devicegegevens in dat geval met andere tools zoals Intune, RMM of de laatste AD-synchronisatie voordat u het device als inactief markeert.
Graph-throttling
Microsoft Graph beperkt het aantal aanvragen dat u binnen een bepaalde periode kunt doen, zeker in grotere omgevingen. Voeg vertragingen of paging toe wanneer u in grote omgevingen werkt.
NinjaOne-services die helpen bij opschoonworkflows voor devices
NinjaOne ondersteunt het opschonen van inactieve devices met de volgende services:
- Opschoonscripts of registermarkeringen uitrollen op meerdere devices
- Rapportage van registerwaarden (bijvoorbeeld CleanupStatus) voor tracking op endpointniveau
- Automatische waarschuwingen voor endpoints die als inactief zijn gemarkeerd of binnen een drempelwaarde niet hebben ingecheckt
- Devices taggen op basis van rol, locatie of status voor vervolgacties
- Inzicht in de opschoonhistorie en het deviceverloop over alle tenants heen
Deze services slaan een brug tussen het opschonen van cloudidentiteiten en de dagelijkse endpointoperaties.
Houd identiteiten en licenties op orde met regelmatige AAD-deviceaudits en opschoningen
De device-inventaris van Azure AD regelmatig controleren is essentieel voor zuivere identity governance en efficiënt licentiebeheer. In deze handleiding las u hoe u met PowerShell uw eerste CSV-bestand exporteert en welke vervolgstappen zorgen voor een efficiënte verwijdering van inactieve devices.
Gerelateerde onderwerpen:
