Microsoft 365-gebruikers zonder licentie weergeven met PowerShell
Dit artikel is van toepassing op Microsoft 365 Enterprise en Office 365 Enterprise.
Gebruikersaccounts in uw Microsoft 365-organisatie hebben mogelijk enkele, alle of geen van de beschikbare licenties toegewezen vanuit de licentieplannen die beschikbaar zijn in uw organisatie. U kunt PowerShell voor Microsoft 365 gebruiken om snel de gelicentieerde en niet-gelicentieerde gebruikers in uw organisatie te vinden.
Opmerking
De Azure Active Directory-module wordt vervangen door de Microsoft Graph PowerShell SDK. U kunt de Microsoft Graph PowerShell SDK gebruiken voor toegang tot alle Microsoft Graph API's. Zie Aan de slag met de Microsoft Graph PowerShell SDK voor meer informatie.
De Microsoft Graph PowerShell SDK gebruiken
Maak eerst verbinding met Microsoft 365 met PowerShell.
Voor het lezen van gebruikerseigenschappen, inclusief licentiegegevens, is het machtigingsbereik User.Read.All of een van de andere machtigingen vereist die worden vermeld op de Graph API referentiepagina 'Een gebruiker ophalen'.
Het machtigingsbereik Organization.Read.All is vereist om de licenties te lezen die beschikbaar zijn in de tenant.
Connect-Graph -Scopes User.Read.All, Organization.Read.All
Voer de volgende opdracht uit om de licentiegegevens van een specifiek gebruikersaccount weer te geven:
Get-MgUserLicenseDetail -UserId "<user sign-in name (UPN)>"
Bijvoorbeeld:
Get-MgUserLicenseDetail -UserId "belindan@litwareinc.com"
Voer de volgende opdracht uit om de lijst weer te geven van alle gebruikersaccounts in uw organisatie waaraan GEEN van uw licentieplannen is toegewezen (gebruikers zonder licentie):
Get-MgUser -Filter 'assignedLicenses/$count eq 0' -ConsistencyLevel eventual -CountVariable unlicensedUserCount -All
Write-Host "Found $unlicensedUserCount unlicensed users."
Voer de volgende opdracht uit om de lijst weer te geven van alle lidgebruikersaccounts (met uitzondering van gasten) in uw organisatie waaraan GEEN van uw licentieplannen is toegewezen (gebruikers zonder licentie):
Get-MgUser -Filter "assignedLicenses/`$count eq 0 and userType eq 'Member'" -ConsistencyLevel eventual -CountVariable unlicensedUserCount -All
Write-Host "Found $unlicensedUserCount unlicensed users (excluding guests)."
Voer de volgende opdracht uit om de lijst met alle gebruikersaccounts in uw organisatie weer te geven waaraan een van uw licentieplannen (gelicentieerde gebruikers) is toegewezen:
Get-MgUser -Filter 'assignedLicenses/$count ne 0' -ConsistencyLevel eventual -CountVariable licensedUserCount -All -Select UserPrincipalName,DisplayName,AssignedLicenses | Format-Table -Property UserPrincipalName,DisplayName,AssignedLicenses
Write-Host "Found $licensedUserCount licensed users."
Voer de volgende opdracht uit om de lijst met alle gebruikersaccounts in uw organisatie weer te geven waaraan een E5-licentie is toegewezen:
$e5Sku = Get-MgSubscribedSku -All | Where SkuPartNumber -eq 'SPE_E5'
Get-MgUser -Filter "assignedLicenses/any(x:x/skuId eq $($e5sku.SkuId) )" -ConsistencyLevel eventual -CountVariable e5licensedUserCount -All
Write-Host "Found $e5licensedUserCount E5 licensed users."
Zie ook
Microsoft 365-gebruikersaccounts, -licenties en -groepen beheren met PowerShell