Anzeigen lizenzierter und nicht lizenzierter Microsoft 365-Benutzer mit PowerShell

Dieser Artikel gilt sowohl für Microsoft 365 Enterprise als auch für Office 365 Enterprise.

Benutzerkonten in Ihrem Microsoft 365-organization verfügen möglicherweise über einige, alle oder keine der verfügbaren Lizenzen, die ihnen aus den In Ihrem organization verfügbaren Lizenzierungsplänen zugewiesen sind. Sie können PowerShell für Microsoft 365 verwenden, um die lizenzierten und nicht lizenzierten Benutzer in Ihrem organization schnell zu finden.

Hinweis

Das Azure Active Directory-Modul wird durch das Microsoft Graph PowerShell SDK ersetzt. Sie können das Microsoft Graph PowerShell-SDK verwenden, um auf alle Microsoft Graph-APIs zuzugreifen. Weitere Informationen finden Sie unter Erste Schritte mit dem Microsoft Graph PowerShell-SDK.

Verwenden des Microsoft Graph PowerShell SDK

Stellen Sie zunächst über PowerShell eine Verbindung mit Microsoft 365 her.

Zum Lesen von Benutzereigenschaften einschließlich Lizenzdetails ist der Berechtigungsbereich User.Read.All oder eine der anderen Berechtigungen erforderlich, die auf der Graph-API Referenzseite "Benutzer abrufen" aufgeführt sind.

Der Berechtigungsbereich Organization.Read.All ist erforderlich, um die im Mandanten verfügbaren Lizenzen zu lesen.

Connect-Graph -Scopes User.Read.All, Organization.Read.All

Führen Sie den folgenden Befehl aus, um die Lizenzdetails eines bestimmten Benutzerkontos anzuzeigen:

Get-MgUserLicenseDetail -UserId "<user sign-in name (UPN)>"

Zum Beispiel:

Get-MgUserLicenseDetail -UserId "belindan@litwareinc.com"

Führen Sie den folgenden Befehl aus, um die Liste aller Benutzerkonten in Ihrem organization anzuzeigen, denen KEINER Ihrer Lizenzpläne (nicht lizenzierte Benutzer) zugewiesen wurde:

Get-MgUser -Filter 'assignedLicenses/$count eq 0' -ConsistencyLevel eventual -CountVariable unlicensedUserCount -All

Write-Host "Found $unlicensedUserCount unlicensed users."

Führen Sie den folgenden Befehl aus, um die Liste aller Mitgliedsbenutzerkonten (mit Ausnahme von Gästen) in Ihrem organization anzuzeigen, denen keiner Ihrer Lizenzierungspläne (nicht lizenzierte Benutzer) zugewiesen wurde:

Get-MgUser -Filter "assignedLicenses/`$count eq 0 and userType eq 'Member'" -ConsistencyLevel eventual -CountVariable unlicensedUserCount -All

Write-Host "Found $unlicensedUserCount unlicensed users (excluding guests)."

Führen Sie den folgenden Befehl aus, um die Liste aller Benutzerkonten in Ihrem organization anzuzeigen, denen Ihre Lizenzierungspläne (lizenzierte Benutzer) zugewiesen wurden:

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."

Führen Sie den folgenden Befehl aus, um die Liste aller Benutzerkonten in Ihrem organization anzuzeigen, denen eine E5-Lizenz zugewiesen ist:

$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."

Siehe auch

Verwalten von Microsoft 365-Benutzerkonten, -Lizenzen und -Gruppen mit PowerShell

Verwalten von Microsoft 365 mit PowerShell

Erste Schritte mit PowerShell für Microsoft 365