Anzeigen Microsoft 365 Kontolizenz- und Dienstdetails mit PowerShell

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

In Microsoft 365 gewähren Lizenzen aus Lizenzierungsplänen (auch als SKUs oder Microsoft 365 Pläne bezeichnet) Benutzern Zugriff auf die Microsoft 365 Dienste, die für diese Pläne definiert sind. Ein Benutzer hat möglicherweise aber keinen Zugriff auf alle Dienste, die in einer Lizenz verfügbar sind, die ihm derzeit zugewiesen ist. Sie können PowerShell für Microsoft 365 verwenden, um den Status von Diensten für Benutzerkonten anzuzeigen.

Weitere Informationen zu Lizenzierungsplänen, Lizenzen und Diensten finden Sie unter Anzeigen von Lizenzen und Diensten mit PowerShell.

Verwenden der Azure Active Directory PowerShell für Graph-Module

Stellen Siezunächst eine Verbindung mit Ihrem Microsoft 365 Mandanten her.

Listen Sie als Nächstes die Lizenzpläne für Ihren Mandanten mit diesem Befehl auf.

Get-AzureADSubscribedSku | Select SkuPartNumber

Verwenden Sie diese Befehle, um die Dienste aufzuführen, die in jedem Lizenzierungsplan verfügbar sind.

$allSKUs=Get-AzureADSubscribedSku
$licArray = @()
for($i = 0; $i -lt $allSKUs.Count; $i++)
{
$licArray += "Service Plan: " + $allSKUs[$i].SkuPartNumber
$licArray +=  Get-AzureADSubscribedSku -ObjectID $allSKUs[$i].ObjectID | Select -ExpandProperty ServicePlans
$licArray +=  ""
}
$licArray

Verwenden Sie diese Befehle, um die Lizenzen aufzuführen, die einem Benutzerkonto zugewiesen sind.

$userUPN="<user account UPN, such as belindan@contoso.com>"
$licensePlanList = Get-AzureADSubscribedSku
$userList = Get-AzureADUser -ObjectID $userUPN | Select -ExpandProperty AssignedLicenses | Select SkuID 
$userList | ForEach { $sku=$_.SkuId ; $licensePlanList | ForEach { If ( $sku -eq $_.ObjectId.substring($_.ObjectId.length - 36, 36) ) { Write-Host $_.SkuPartNumber } } }

Verwenden des Microsoft Azure Active Directory-Moduls für Windows PowerShell

Stellen Siezunächst eine Verbindung mit Ihrem Microsoft 365 Mandanten her.

Führen Sie als Nächstes diesen Befehl aus, um die Lizenzierungspläne aufzuführen, die in Ihrer Organisation verfügbar sind.

Get-MsolAccountSku

Hinweis

PowerShell Core unterstützt nicht das Microsoft Azure Active Directory-Modul für Windows PowerShell und Cmdlets mit Msol im Namen. Um diese Cmdlets weiterhin verwenden zu können, müssen Sie sie über Windows PowerShell ausführen.

Führen Sie als Nächstes diesen Befehl aus, um die Dienste aufzuführen, die in jedem Lizenzierungsplan verfügbar sind, und die Reihenfolge, in der sie aufgeführt sind (die Indexnummer).

(Get-MsolAccountSku | where {$_.AccountSkuId -eq "<AccountSkuId>"}).ServiceStatus

Verwenden Sie diesen Befehl, um die Lizenzen aufzuführen, die einem Benutzer zugewiesen sind, und die Reihenfolge, in der sie aufgeführt sind (die Indexnummer).

Get-MsolUser -UserPrincipalName <user account UPN> | Format-List DisplayName,Licenses

So zeigen Sie Dienste für ein Benutzerkonto an

Verwenden Sie die folgende Syntax, um alle Microsoft 365 Dienste anzuzeigen, auf die ein Benutzer Zugriff hat:

(Get-MsolUser -UserPrincipalName <user account UPN>).Licenses[<LicenseIndexNumber>].ServiceStatus

Dieses Beispiel zeigt die Dienste, auf die der Benutzer BelindaN@litwareinc.com Zugriff hat. Es zeigt die Dienste, die allen Lizenzen zugeordnet sind, die dem Konto zugewiesen sind.

(Get-MsolUser -UserPrincipalName belindan@litwareinc.com).Licenses.ServiceStatus

Dieses Beispiel zeigt die Dienste, auf die der Benutzer „BelindaN@litwareinc.com“ ab der ersten Lizenz, die dem Konto zugewiesen ist (die Indexnummer ist 0), zugreifen kann.

(Get-MsolUser -UserPrincipalName belindan@litwareinc.com).Licenses[0].ServiceStatus

Verwenden Sie die folgende Syntax, um alle Dienste für einen Benutzer anzuzeigen, dem mehrere Lizenzen zugewiesen wurden:

$userUPN="<user account UPN>"
$AllLicenses=(Get-MsolUser -UserPrincipalName $userUPN).Licenses
$licArray = @()
for($i = 0; $i -lt $AllLicenses.Count; $i++)
{
$licArray += "License: " + $AllLicenses[$i].AccountSkuId
$licArray +=  $AllLicenses[$i].ServiceStatus
$licArray +=  ""
}
$licArray

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